Those data types used to be strings. That's probably why it worked before.
I wouldn't lose any sleep if we changed them back to String from QName if it made things easier now. Can always revisit it later. -David On May 24, 2011, at 7:39 AM, Ivan wrote: > I just committed some changes to trunk at revision: 1127089. Current > solution is to use a XmlAdapter to create the QName even if it is > illegal. Now, it is OK to unmarshal the XML file, but while > marshalling the object to XML texts, those namespace information is > lost ... > Not sure whether there is better way for this. > > 2011/5/23 Ivan <[email protected]>: >> Hi, >> In the HandlerChain class of the jee module, we uses QName for the >> type of serviceNamePattern and portNamePattern for better access (By >> default, String type is used in the generated classes). But in the web >> service spec, it is allowed to specify * and invalid name space >> prefix. >> e.g. >> <handler-chain> >> <service-name-pattern >> xmlns:ns1="http://hello.org">foo:HelloService</service-name-pattern> >> ...... >> </handler-chain> >> >> Now, while parsing the DD above, an exception like >> java.lang.IllegalArgumentException: prefix foo is not bound to a >> namespace is thrown. >> Is there a way in JAXB to create a QName even the name space is >> invalid ? I am thinking to have a XMLAdapter to do this from String, >> but seems no way to look up the namespace by the prefix. >> Thoughts ? Thanks. >> -- >> Ivan >> > > > > -- > Ivan
