Hi Dan,

Interesting, do you mean add another argument 'classpath' into the wsdl2java mojo?
Is it easy to parse the dependencies to the 'classpath' ?


Thanks,
James


I think the proper fix would be to update the wsdl2java (and java2wsdl) maven plugin to use the project dependencies itself in addition to it's own plugin dependencies. We already buildup a "classpath" in the tools for the tool to look up the java classes for java2wsdl. We should just go ahead and use it for everything including the "plugins".

Probably the best option would be to change the plugin to create a full classpath (project + plugin jars/deps) and fork the code gen/wsdl gen. That would avoid some memory issues in Maven as well.

Dan


On Thursday 06 September 2007, James Mao wrote:
Hi Sergey,

I struggled a day, and still can not figure out how to solve it, I've
upgraded to mvn 2.0.7, but still can not solve the problem.

In systests, if you print the classpath, you will find the jar
cxf-rt-bindings-soap-2.1-incubator-SNAPSHOT.jar  is in your classpath,

However, if you build from the top level, in the classpath it include
the C:\src\java\apache\cxf\rt\bindings\soap\target\classes

And for some unknown reason, the code-gen plugin just can not load the
soap binding even though you defined the soap in the dependencies,
very strange.

I felt that this's a bug in maven.

There's one solution to solve this problem, that's define the soap
binding in the code-gen plugin,
but then we'll have the cyclic dependencies:
soap->jaxb->testutil->codegen->soap
To solve the cyclic dependency, we have to move the tests to systests
module, or create a new test module...

Any good suggestions?

James

If you build from top level, you'll not have the problem,  the maven
code-gen plugin , just can not load the soap module,
I'll take look at it tomorrow, maybe disable the test, and will
re-enable it later, if we resolve the dependencies.

Cheers,
James

Hi

I can not build CXF on Windows. The failure occurs in the systests
module :

HeaderClientServerTest.java:[62,41]
orderPizza(org.apache.cxf.pizza.types.
OrderPizzaType,org.apache.cxf.pizza.types.CallerIDHeaderType) in
org.apache.cxf.
pizza.Pizza cannot be applied to
(org.apache.cxf.pizza.types.OrderPizzaType)

trunk/systests have a generated folder where
org.apache.cxf.pizza.Pizza is located, it has a method :

orderPizza(org.apache.cxf.pizza.types.OrderPizzaType,org.apache.cxf
.pizza.types.CallerIDHeaderType)


here's code in the HeaderClientServerTest.java :

OrderPizzaResponseType res = port.orderPizza(req);
System.out.println(res);

//OrderPizzaResponseType res =  port.orderPizza(req, header);
//assertEquals(208, res.getMinutesUntilReady());

The test is basically disabled and it also doesn't compile.
Uncommenting the above two lines makes the test compile and pass.
Not sure what the story with test is, but as far as the compliation
is concerned I reckon I'm picking up some stale module which
affects the wsdl generation ?

can someone please advise on how to deal with issues like this one
? I've removed a cxf directory in the local repo, created a new
snapshot, no luck....

Thanks, Sergey

----------------------------
IONA Technologies PLC (registered in Ireland)
Registered Number: 171387
Registered Address: The IONA Building, Shelbourne Road, Dublin 4,
Ireland



Reply via email to