Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] MOXy: Marshalling with no namespace prefix?

Hi Polly,

I entered an Eclipse Bug to track that work item. You can monitor the bug here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=236051

-Matt

amphoras wrote:
Hi Matt,

That's great news!  Can you point me to the bug so I can watch for it?

Thanks for your quick response.

--Polly



Matt MacIvor wrote:
  
Hi Polly,

EclipseLink doesn't currently support the default namespace for 
marshalling. We require a prefix for any namespace that's used. However, 
there is already a work item to add support for this, so it will be 
coming in the near future.

-Matt

    
Hi,

I have read the documentation about namespace resolution many times now
(http://wiki.eclipse.org/Using_Workbench_(ELUG)#How_to_Configure_XML_Schema_Namespace),
but I am still unsure of how to do what I want to do.  Please bear with me
if this is a stupid question.

My schema is defined like this:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns="http://www.foo.com/bar/baz"
	targetNamespace="http://www.foo.com/bar/baz"
      
elementFormDefault="qualified"
  
	attributeFormDefault="unqualified">

My document is like this:
<Address xmlns='http://www.foo.com/bar/baz'
xmlns:xsd='http://www.w3.org/2001/XMLSchema'
 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:schemaLocation='...' >
 
   <LineOne>101 Main Street</LineOne>
   <LineTwo>Apt 514</LineTwo>
   <City>Malibu</City>
   <State>CA</State>
   <Country>USA</Country>
   <PostalCode>90914-2938</PostalCode>

</Address>

It appears that when unmarshalling the document, EclipseLink searches for
      
an
  
entry in the XMLContext that contains both the namespace and the element
name.  So to tell EclipseLink the association between the namespace URL
      
and
  
the element, I found through trial and error to configure EclipseLink
      
using
  
these options:

Namespace URL 	                   Prefix 	 Declare
http://www.foo.com/bar/baz 	ns1 	      true

Then my document unmarshalls correctly and everything's great!

Unfortunately, I found that when I marshall the object back out, all the
elements have the namespace prefix, like "ns1:Address".   The
      
documentation
  
regarding the Prefix field says:

"When the EclipseLink runtime marshalls (writes) an object to an XML
document, it uses the namespace prefixes you specify here."

But what if I don't want to use the prefix?  We defined the target
      
namespace
  
so that our documents do not have to use the prefix and can be cleaner. 
      
Is
  
there a way to configure things so that marshalling does not use the
      
prefix?  
  
Thanks!
--Polly


 

      
_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users


    
  

Back to the top