Date: prev next · Thread: first prev next last


Hi Svante,

Replacing the simple API library with the /odfdom-java-1.0.0-BETA1-jar-with-dependencies.jar <https://oss.sonatype.org/content/groups/public/org/odftoolkit/odfdom-java/1.0.0-BETA1/odfdom-java-1.0.0-BETA1-jar-with-dependencies.jar>/ worked and my issue is resolved.

I'm very happy to hear that more progress will happen on this project with more attention from you!

Thank you again!

Andrew

On 2021-04-06 12:10 p.m., Svante Schubert wrote:
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>

--
Andrew Willerding
Callista CTI

  ph: 416 444-9702 x9455
  fx: 416 444-9732
cell: 416 712-2323
 www: http://www.callistacti.com


--
To unsubscribe e-mail to: dev+unsubscribe@odftoolkit.org
Problems? https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.odftoolkit.org/dev/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


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.