cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <>
Subject Re: wsdl2java -p option change
Date Tue, 31 Mar 2009 07:48:37 GMT

On Mon March 30 2009 6:26:35 pm Rao, Sameer V wrote:
> Since XJC already supports using single package name for multiple
> schemas with different namespace by means of passing the -p parameter,
> why should this feature be disabled?

I believe (at least at one point), that this was one of the parameters that 
could not be passed programmatically into jaxb.   For example, the -npa flag 
isn't passable as well:

That said, it may have been fixed at one point.   -npa is supposed to be fixed 
on the JAXB trunk to be part of jaxb 2.1.11.   If you tested with the -xjc-p 
thing, then it probably does work now and we could switch to that.

> If we pass -xjc-p,<package-name> in the wsdl2java then XJC should (and
> does pick) up the single package for all namespaces and builds 1
> with createxxx() for all the types. It also generate
> the with the with namespace that is most frequently
> used and in other JAXB classes it creates the XMLElement with the name
> and namespace.

Cool.   Maybe eliminate the error and pass it that way.  That would be 

> One thing I noticed is that JAXBDataBinding class  is actually passing
> the default packagename passed to the wsdl2java to XJC. Should it be
> doing that? Instead it should just let the user pass JAXB package
> through the -xjc argument.
>        if (context.getPackageName() != null) {
> schemaCompiler.setDefaultPackageName(context.getPackageName());
>         }
> The context.getPackageName is the -p parameter of wsdl2Java (i.e. the
> default package for the service interface, fault-class etc. Should we be
> really passing the same to databinding compiler - XJC?

The purpose was to allow  things to be easily specified in one place and the 
tooling could separate things out.   Basically, allow a single -p blah to dump 
everything out in blah if that's possible.   If we can map the -p into xjc's -
p flag, that would accomplish that.


> Thanks,
> Sam
> -----Original Message-----
> From: Daniel Kulp []
> Sent: Monday, March 30, 2009 9:11 AM
> To:
> Cc: Eamonn Dwyer
> Subject: Re: wsdl2java -p option change
> Eamonn,
> On Mon March 30 2009 9:25:23 am Eamonn Dwyer wrote:
> > It looks like the use of the -p flag with wsdl2java has changed dor
> cxf
> > 2.2. Now it reports
> >
> > "-p option cannot be used when wsdl contains mutiple schemas"
> >
> > for my wsdl, even though the wsdl compiles with version 2.1.4.
> Hmm...  I thought that message went in for 2.1.4 as well.  I'm surprised
> it
> worked for 2.1.4.
> Actually, that error message should change a bit.   -p CAN be used if
> you
> provide a unique package for each namespace:
> -p  -p
> > The wsdl in question does import other schema, so I reckon that this
> is
> > causing the error to be reported. Is that correct?
> If there are schemas in multiple namespaces, then it should report that
> issue.
> > If this is the case, is it really valid to say I cannot specify a
> > package name now when I import a schema. I can understand it when the
> > schema is a 3rd party one, but what if I just have simply factored out
> > some schema from the wsdl file?
> Basically, if you have multiple schemas, you NEED to specify a unique
> package
> name for each schema so the and for
> each
> schema is put in a unique location instead of overwriting itself.

Daniel Kulp

View raw message