I did not commit the move to 2.1.10, too many strange incompatibilities.

On Tue, Mar 31, 2009 at 1:04 PM, Daniel Kulp <[email protected]> wrote:

>
> I just dug up my old tests and it looks like the problems with the -p stuff
> is
> fixed in JAXB 2.1.10.   I'm not sure when it was fixed, but it definitely
> looks OK with 2.1.10.  Thus, I'm going to go ahead and remove the check for
> the -p issues for CXF 2.2.1.
>
> Dan
>
>
> On Tue March 31 2009 3:48:37 am Daniel Kulp wrote:
> > 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:
> > https://issues.apache.org/jira/browse/CXF-1934
> >
> > 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
> > > ObjectFactory.java with createxxx() for all the types. It also generate
> > > the package-info.java 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
> > perfect.
> >
> > > 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.
> >
> > Dan
> >
> > > Thanks,
> > > Sam
> > >
> > > -----Original Message-----
> > > From: Daniel Kulp [mailto:[email protected]]
> > > Sent: Monday, March 30, 2009 9:11 AM
> > > To: [email protected]
> > > 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 http://blah.com=com.blah  -p http://foo.com=com.foo
> > >
> > > > 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 package-info.java and ObjectFactory.java
> for
> > > each
> > > schema is put in a unique location instead of overwriting itself.
>
> --
> Daniel Kulp
> [email protected]
> http://www.dankulp.com/blog
>

Reply via email to