You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by kiwiwings <ki...@apache.org> on 2016/07/16 22:47:16 UTC
Re: Fwd: Re: xmlbeans successor
I've opened a ticket for it:
https://issues.apache.org/jira/browse/LEGAL-264
--
View this message in context: http://apache-poi.1045710.n5.nabble.com/xmlbeans-successor-tp5722870p5724030.html
Sent from the POI - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org
Re: Fwd: Re: xmlbeans successor
Posted by Jason Harrop <jh...@gmail.com>.
I made a new POC of using current docx4j in Android Studio:
https://github.com/plutext/Docx4j4Android4
So I thought I'd share my JAXB related experiences:
MOXy
^^^^^^
MOXy generates class files on the fly during Context init (see stack trace
copied below)
org.eclipse.persistence.internal.jaxb.JaxbClassLoader.generateClass:
public Class <http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/lang/Class.java#Class>
<http://grepcode.com/file/repo1.maven.org/maven2/org.eclipse.persistence/eclipselink/2.4.2/org/eclipse/persistence/internal/jaxb/JaxbClassLoader.java#>generateClass(String
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/lang/String.java#String>
className, byte[] bytes) {
Class <http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/lang/Class.java#Class>
theClass = this.defineClass
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b27/java/lang/ClassLoader.java#ClassLoader.defineClass%28java.lang.String%2Cbyte%5B%5D%2Cint%2Cint%29>(className,
bytes, 0, bytes.length);
You can't just use https://github.com/linkedin/dexmaker there instead,
since dexmaker works at a lower level than just ingesting the bytes.
At this point I turned my attention to the JAXB RI instead...
JAXB RI
^^^^^^^^^
Things are easier these days, now Android has annotation support.
I compiled JAXB RI tip for Java 7, with https://github.com/gf-metro/
jaxb/pull/34 so life goes on even though
org.apache.harmony.xml.parsers.SAXParser
doesn't support http://javax.xml.XMLConstants/feature/secure-processing.
JAXB still uses AWT etc which I haven't looked into removing...
ciao .. Jason
-----------------
MOXy stack trace:
[java.lang.UnsupportedOperationException: can't load
this type of class file]
at org.eclipse.persistence.jaxb.J
AXBContext$ContextPathInput.createContextState(JAXBContext.java:922)
at org.eclipse.persistence.jaxb.J
AXBContext$ContextPathInput.createContextState(JAXBContext.java:855)
at org.eclipse.persistence.jaxb.J
AXBContext.<init>(JAXBContext.java:189)
at org.eclipse.persistence.jaxb.J
AXBContextFactory.createContext(JAXBContextFactory.java:129)
at java.lang.reflect.Method.invoke(Native
Method)
at javax.xml.bind.ContextFinder.n
ewInstance(ContextFinder.java:186)
at javax.xml.bind.ContextFinder.n
ewInstance(ContextFinder.java:146)
... 24 more
Caused by: java.lang.UnsupportedOperationException:
can't load this type of class file
at java.lang.ClassLoader.defineCl
ass(ClassLoader.java:520)
at org.eclipse.persistence.intern
al.jaxb.JaxbClassLoader.generateClass(JaxbClassLoader.java:110)
at .generateWrapperClass(Mapping
sGenerator.java:3231)
at org.eclipse.persistence.jaxb.c
ompiler.MappingsGenerator.generateWrapperClassAndDescriptor(
MappingsGenerator.java:3000)
at org.eclipse.persistence.jaxb.c
ompiler.MappingsGenerator.addEnumerationWrapperAndDescriptor
(MappingsGenerator.java:2971)
at org.eclipse.persistence.jaxb.c
ompiler.MappingsGenerator.processGlobalElements(MappingsGenerator.java:2918)
at org.eclipse.persistence.jaxb.c
ompiler.MappingsGenerator.generateProject(MappingsGenerator.java:274)
E/org.docx4j.jaxb.Context: at org.eclipse.persistence.jaxb.c
ompiler.Generator.generateProject(Generator.java:188)
at org.eclipse.persistence.jaxb.J
AXBContext$ContextPathInput.createContextState(JAXBContext.java:927)
at org.eclipse.persistence.jaxb.J
AXBContext$ContextPathInput.createContextState(JAXBContext.java:920)
On Mon, Aug 1, 2016 at 11:37 PM, kiwiwings <ki...@apache.org> wrote:
> In the meantime, there was some discussion on the legal list [1]
>
> There was no definitely DO nor DON'T, but it looks like a Moxy fork would
> be
> the way to go.
> It would be nice if you read through that thread and post your two pence
> here or there ...
> If there's a lazy consensus, I'll continue my JAXB endeavour after my
> current work (HSSF cryptoapi)
>
> Andi.
>
>
> [1] https://issues.apache.org/jira/browse/LEGAL-264
>
>
>
> --
> View this message in context: http://apache-poi.1045710.n5.
> nabble.com/xmlbeans-successor-tp5722870p5724274.html
> Sent from the POI - Dev mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
> For additional commands, e-mail: dev-help@poi.apache.org
>
>
Re: Fwd: Re: xmlbeans successor
Posted by kiwiwings <ki...@apache.org>.
In the meantime, there was some discussion on the legal list [1]
There was no definitely DO nor DON'T, but it looks like a Moxy fork would be
the way to go.
It would be nice if you read through that thread and post your two pence
here or there ...
If there's a lazy consensus, I'll continue my JAXB endeavour after my
current work (HSSF cryptoapi)
Andi.
[1] https://issues.apache.org/jira/browse/LEGAL-264
--
View this message in context: http://apache-poi.1045710.n5.nabble.com/xmlbeans-successor-tp5722870p5724274.html
Sent from the POI - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org