I found the problem.. a cut and paste error

root = RootDocument.Factory.parse(new
File("./src/test/resources/device.xml"));

I forgot the new File() :(

now when I do root.toString();

I see the original file imported.. that,s perfect.

now I need to copy the Root into a Pojo.

there is a easy way to do that ?   and I need to find out which attributes
are not in the schemas.. like that I'll convert them in a structure like
JAXB  Map otherAttributes



2009/12/23 Sebastien Dionne <survivan...@gmail.com>

> works fine with JAXB.  and the syntax is fine.
>
>
> XSD
>
> <?xml version="1.0" encoding="utf-8"?>
> <root xmlns="urn:schemas-upnp-org:device-1-0">
>    <device>
>       <deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
>       <serviceList>
>          <service>
>
> <serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
>
> <serviceId>urn:upnp-org:serviceId:urn:schemas-upnp-org:service:ConnectionManager</serviceId>
>             <SCPDURL>ConnectionManager.xml</SCPDURL>
>             <controlURL>ConnectionManager/Control</controlURL>
>             <eventSubURL>ConnectionManager/Event</eventSubURL>
>          </service>
>       </serviceList>
>    </device>
> </root>
>
>
> XML received
>
> <?xml version="1.0" encoding="utf-8"?>
> <root xmlns="urn:schemas-upnp-org:device-1-0">
>    <device>
>       <deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
>       <serviceList>
>          <service>
>
> <serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
>
> <serviceId>urn:upnp-org:serviceId:urn:schemas-upnp-org:service:ConnectionManager</serviceId>
>             <SCPDURL>ConnectionManager.xml</SCPDURL>
>             <controlURL>ConnectionManager/Control</controlURL>
>             <eventSubURL>ConnectionManager/Event</eventSubURL>
>          </service>
>       </serviceList>
>       <dlna:X_DLNADOC xmlns:ns2="urn:schemas-upnp-org:device-1-0"
> xmlns="">DMS-1.00</dlna:X_DLNADOC>
>    </device>
> </root>
>
> 2009/12/23 Cezar Andrei <cezar.and...@oracle.com>
>
>>  It’s probably because the document is not a well formed XML document.
>>
>>
>>
>> Cezar
>>
>>
>>   ------------------------------
>>
>> *From:* Sebastien Dionne [mailto:survivan...@gmail.com]
>> *Sent:* Wednesday, December 23, 2009 11:17 AM
>>
>> *To:* user@xmlbeans.apache.org
>> *Subject:* Re: Xmlbeans is able to retrieve extra attribute from xml ?
>>
>>
>>
>> thanks, but why do I obtain a exception CDATA when I parse a xml that
>> contains more data then the schema ?
>>
>> RootDocument root = RootDocument.Factory.parse(new
>> File("./src/test/resources/
>>
>> RootDevice.xml"));
>> System.out.println(root.toString());
>>
>> Exception in thread "main" org.apache.xmlbeans.XmlException: error:
>> Unexpected element: CDATA
>>     at
>> org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3486)
>>     at org.apache.xmlbeans.impl.store.Locale.parse(Locale.java:712)
>>
>>
>>
>>  2009/12/23 Cezar Andrei <cezar.and...@oracle.com>
>>
>> Sebastien,
>>
>>
>>
>> It is possible, please check the XmlCursor interface. On the xmlbeans
>> object you have the attributes, call:
>>
>> XmlCursor xc = xobj.getCursor(); . Move the cursor around with
>> xc.toFirstAttribute(); xc.toNextAttribute();
>>
>> And get info on the current token, in your case the attribute: xc.getName
>> xc.getTextValue, and when you’re done call xc.dispose().
>>
>>
>>
>> Cezar
>>
>>
>>   ------------------------------
>>
>> *From:* Sebastien Dionne [mailto:survivan...@gmail.com]
>> *Sent:* Wednesday, December 23, 2009 7:10 AM
>> *To:* user@xmlbeans.apache.org
>> *Subject:* Xmlbeans is able to retrieve extra attribute from xml ?
>>
>>
>>
>> I have a simple question.
>>
>>
>>
>> I have a xsd standard (string..no complextype).
>>
>> I receive xml message that can contains extra attributes that are not in
>> the xsd.
>>
>> With JAXB they are put into
>>
>>     /**
>>      * Gets a map that contains attributes that aren't bound to any typed
>> property on this class.
>>      *
>>      * <p>
>>      * the map is keyed by the name of the attribute and
>>      * the value is the string value of the attribute.
>>      *
>>      * the map returned by this method is live, and you can add new
>> attribute
>>      * by updating the map directly. Because of this design, there's no
>> setter.
>>      *
>>      *
>>      * @return
>>      *     always non-null
>>      */
>>     public Map<QName, String> getOtherAttributes() {
>>         return otherAttributes;
>>     }
>>
>> but is it possible to do something similar with xmlbeans ?
>>
>> It a showstopper if I can't do that.
>>
>> thanks
>>
>>
>> --
>> -------------
>> A+
>>
>> Sébastien.
>>
>> Vous pouvez me suivre sur Twitter / You can follow me on Twitter :
>> http://twitter.com/survivant
>>
>>
>>
>>
>> --
>> -------------
>> A+
>>
>> Sébastien.
>>
>> Vous pouvez me suivre sur Twitter / You can follow me on Twitter :
>> http://twitter.com/survivant
>>
>
>
>
> --
> -------------
> A+
>
> Sébastien.
>
> Vous pouvez me suivre sur Twitter / You can follow me on Twitter :
> http://twitter.com/survivant
>



-- 
-------------
A+

Sébastien.

Vous pouvez me suivre sur Twitter / You can follow me on Twitter :
http://twitter.com/survivant

Reply via email to