Hello Andrew,
Thank you for bringing up this problem, I have created:
https://github.com/tdf/odftoolkit/issues/86
<https://github.com/tdf/odftoolkit/issues/86> (and some more dependent
information in https://github.com/tdf/odftoolkit/issues/87
<https://github.com/tdf/odftoolkit/issues/87>)
Let me give you (and everyone) a quick head's up as I have some good news:
After Easter vacation (this week), I am planning to continue to work
on finishing a very old and difficult issue in the generator project
https://issues.apache.org/jira/browse/ODFTOOLKIT-187
<https://issues.apache.org/jira/browse/ODFTOOLKIT-187> which breaks
currently our code generation using the Multi-Schema-Validator (MSV)
<https://github.com/xmlark/msv/tree/build-refactoring>.
The problem is complex but it helped to read the RelaxNG
specification, esp. about its simplifications
<https://relaxng.org/spec-20011203.html#simplification> being done as
well by MSV.
BTW meanwhile, I have received rights for Maven release for the
Multi-Schema-Validator (MSV) release and my current plan is to make it
a new TDF project.
This MSV issue above is blocking the ODF 1.3 release, as I need to
generate a new DOM model from the ODF 1.3 grammar.
Likely I will do three releases in a quick sequence:
* ODFDOM 0.9.0 - last JDK 1.8 release with last Simple API bundle
supporting ODF 1.2
* ODFDOM 0.10.0 - bundling ODF change
<https://tdf.github.io/odftoolkit/odfdom/operations/operations.html>
support using JDK >=9 release (tested with LTS JDK 11) supporting
ODF 1.2
* ODFDOM 0.11.0 - bundling ODF change
<https://tdf.github.io/odftoolkit/odfdom/operations/operations.html>
support using JDK >=9 release (tested with LTS JDK 11) supporting
ODF 1.3
I would love to have a stable API for 1.0.0, therefore the 0.*
releases now, as I will
It is unfortunately not possible, yet, to generate an ODF model that
saves & loads both ODF 1.2 and ODF 1.3. This might & should be changed
in the future (by a better ODF specification stating the differences).
BTW I have become at the end of last year also OASIS ODF co-editor
(similar to Michael Stahl on CC) for the OASIS ODF 1.3 release of the
OASIS standard
<https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office>,
where we both set up a GitHub repository for the ODF specification
creation process: https://github.com/oasis-tcs/odf-tc
<https://github.com/oasis-tcs/odf-tc> - we plan to extend our work a
lot for ODF 1.4 and improve our tooling to automate the ODF releases
for OASIS.
In addition, I became OASIS ODF TC (technical committee) co-chair.
Helps to be here in this project maintainer, who likes to generate and
there at OASIS co-chair who propagates to make the relevant data
accessible by automation from the spec (or generate the spec from
these artefacts).
Last but not least, I was able to sign this year a contract for an EU
subproject to receive funding for my upcoming work in the ODF Toolkit,
especially ODFDOM:
https://nlnet.nl/project/InDocumentSearch/
<https://nlnet.nl/project/InDocumentSearch/>
Therefore, after months of little time, I can finally draw my full
attention to this project again! \o/
If you (or anyone) got any questions we might as well organize a short
JITSI call - question and answer - if you like - even this week! :-)
Not sure how we do this best, but perhaps using Doodle? I am located
in Europe, just to mention my time zone ;-)
What do you think?
Best regards,
Svante
PS: Regarding your Simple API problem, it seems the Simple API has
changed and you need to analyse its history when and in what context
this was changed.
Simple API was always an IBM fork and never on my focus, therefore I
do not remember anything about their API changes. Sorry!
Am Do., 1. Apr. 2021 um 15:39 Uhr schrieb Andrew Willerding
<awillerding@callistacti.com <mailto:awillerding@callistacti.com>>:
Hi Svante,
Thank you for getting back to me so quickly!
1) I "resaved" the .fodt file to a regular .odt file with LibreOffice
and was able to quickly resolve this issue as you had suggested. I
mistakenly "just assumed" that the toolkit would handle any type
of odt
related files and had previously used the flat odt since it was a
way I
could easily see DOM contents.
2) I certainly understand the time limitations and priorities you
have
when doing such a migration. I just pointed out the broken links
just in
case you weren't aware of it.
3) You already have the "Simple API (deprecated)" link on the
odftoolkit.org <http://odftoolkit.org> web site and I'm guessing
that most users of the ODF
Toolkit will be like me and will not need more than that. It was
certainly enough to do I needed to do with the Toolkit at the time.
Unless I'm mistaken and since it's deprecated, there's no clear
path on
how to move beyond the deprecation. It would be nice to have a
updated
https://odftoolkit.org/simple/gettingstartguide.html
<https://odftoolkit.org/simple/gettingstartguide.html> and
https://odftoolkit.org/simple/document/cookbook/index.html
<https://odftoolkit.org/simple/document/cookbook/index.html> that
don't
use the deprecated simple library.
For example, I am now stuck at this point in my code:
template = TextDocument.loadDocument(templateFile);
String docSearchFieldName = "LastName";
VariableField myField =
template.getVariableFieldByName(docSearchFieldName);
as I'm getting
java.lang.NoSuchMethodError:
'org.odftoolkit.simple.common.field.VariableField
org.odftoolkit.simple.TextDocument.getVariableFieldByName(java.lang.String)'
I don't know what has replaced this method or how to move beyond this
point.
Thanks,
Andrew
On 2021-03-31 6:03 p.m., Svante Schubert wrote:
> Hello Andrew,
>
> 1. You get a ZIP file error, as it seems you are loading a
flat XML file
> (all XML in one file without ZIP).
> The usual suffix is ODT and your file's suffix is FODT.
> Drag & Drop your input file into a text editor or try to
unzip it. :-)
> 2. The broken links are a combination mistake of Michael and
me, I have
> not fixed it as I am chewing on an 8-year-old source code
generation
> problem.
> But I am getting closer...
> 3. Example Code can be found in the test folder of ODFDOM,
but you are
> absolutely right it should be better documented. Any
suggestions on where
> to place it?
> Considering switching the HTML generation from old
proprietary (no
> longer supported) Apache Markdown to HTML conversion with
Sphinx - created
> for API documentation in the first place.
>
> Good luck and happy holidays!
> Svante
>
> Am Mi., 31. März 2021 um 21:38 Uhr schrieb Andrew Willerding <
> awillerding@callistacti.com <mailto:awillerding@callistacti.com>>:
>
>> Hi,
>>
>> I haven't used the ODF libraries since they were part of Apache
and now
>> I have a project I'd like to make use of manipulating and
creating ODF
>> files and understand that "things have changed." ;-)
>>
>> I'm trying to run this code which ran fine with the Apache
libraries
>>
>> try {
>> template = TextDocument.loadDocument(templateFile);
>> } catch (Exception ex) {
>> logItem("Template:" + templateFile.getAbsolutePath()
>> + ",TemplateFile not found.",
>> ex);
>> throw new IOException(ex.getMessage());
>> }
>>
>> and receiving
>>
>> java.lang.IllegalArgumentException:
>> org.odftoolkit.odfdom.pkg.OdfValidationException; The ODF package
>> 'file:////ReportTemplates/ReportAgr.fodt' shall be a ZIP file!
>>
>> My Maven dependency is ..
>>
>> <dependency>
>> <groupId>org.odftoolkit</groupId>
>> <artifactId>simple-odf</artifactId>
>> <version>0.9.0-RC1</version>
>> <classifier>jar-with-dependencies</classifier>
>> </dependency>
>>
>> I guess I have 2 questions. The immediate question is why am I
getting
>> the ZIP file error and how do I fix the situation. The second
question
>> is where do I find the documentation on how to use the new ODF
Toolkit?
>> The links seem to be broken on the web site.
>> (https://tdf.github.io/odftoolkit/docs/
<https://tdf.github.io/odftoolkit/docs/>
>> <https://tdf.github.io/odftoolkit/docs/
<https://tdf.github.io/odftoolkit/docs/>>) I have a simple need.
I have
>> created a template document that I want to use to replace
fields (like
>> name, address) with dynamic values and also add items to an
existing table.
>>
>> Some existing example Java code to do this would be very very
helpful.
>>
>>
>> Thanks,
>>
>> Andrew
>>
>>
>> --
>> Andrew Willerding
>> Callista CTI
>>
>> ph: 416 444-9702 x9455
>> fx: 416 444-9732
>> cell: 416 712-2323
>> www: http://www.callistacti.com <http://www.callistacti.com>
>>
>>
>> --
>> To unsubscribe e-mail to: dev+unsubscribe@odftoolkit.org
<mailto:dev%2Bunsubscribe@odftoolkit.org>
>> Problems?
>>
https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
<https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/>
>> Posting guidelines + more:
https://wiki.documentfoundation.org/Netiquette
<https://wiki.documentfoundation.org/Netiquette>
>> List archive: https://listarchives.odftoolkit.org/dev/
<https://listarchives.odftoolkit.org/dev/>
>> Privacy Policy: https://www.documentfoundation.org/privacy
<https://www.documentfoundation.org/privacy>
>>
--
Andrew Willerding
Callista CTI
ph: 416 444-9702 x9455
fx: 416 444-9732
cell: 416 712-2323
www: http://www.callistacti.com <http://www.callistacti.com>
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.