Hi Michael,
To me it seems you might have 2 different jars around for the same
schema or some classloader issue. I would just make sure first it does
run correctly from command line.
Cezar
On Tue, 2012-12-11 at 13:39 -0800, Michael Bishop wrote:
> Hello all,
>
> I'm experiencing a weird issue in trying to load documents in
> XMLBeans. I'm working with a NetBeans platform application and we use
> XMLBeans extensively throughout the application. This issue is a
> "first" for me and I'm not sure how to proceed.
>
> I have an object that stores XML data as a String. So, elsewhere in
> my application, I have something like this:
>
> MyDocument doc = MyDocument.Factory.newInstance();
> ... // populate stuff here.
> String myText = doc.xmlText();
>
> Elsewhere in my application, I want to validate that the String I'm
> receiving is indeed a valid instance of that document:
>
> // Shortened for brevity's sake.
> public boolean isValid(final String input) {
> try {
> MyDocument.Factory.Parse(input);
> return true;
> } catch (Exception ex) {
> }
>
> return false;
> }
>
> I get this perplexing error:
>
> java.lang.ClassCastException: myPackage.impl.MyDocumentImpl cannot be
> cast to myPackage.MyDocument
>
> So, I put the whole thing in a unit test. I made a document, wrote it
> to a String, then parsed it again. It works in a unit test. So there
> must be something going wrong with the environment in my application.
> Unfortunately, I don't know what that is, nor how to troubleshoot.
> Here's what I know:
>
> - The XMLBeans data is in a single module. There should be no
> duplicate classes.
> - I checked the ClassLoader of the MyDocument and MyDocumentImpl
> classes. They're the same.
> - I load/edit/save other XMLBeans documents throughout the application
> without issue.
> - The string data is stored as child text in another XML element.
> This may be relevant:
>
> String xmlText = myDocument.xmlText();
> myOtherElement.setStringValue(xmlText);
> ...
> String textToValidate = myOtherElement.getStringValue();
> MyDocument.Factory.Parse(textToValidate);
>
> Could this be mangling the structure? It looks fine when I log the
> value.
>
> Anyway, further suggestions would be great.
>
> Michael
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]