Hi all,

In my opinion Peter sketched out a nice solution. Why do you care of
having multiple copies of the xsd while they're generated? Generated
code shouldn't be in version management, only the sources. And because
of his solution makes use of only one xsd you're not duplicating
anything. The only source is the original (shared) xsd file.

I have to use this soon too, so this message opened my eyes on this
point!

Regards,
Sietse

-----Original Message-----
From: Mauro Molinari [mailto:[EMAIL PROTECTED] 
Sent: 20 November 2007 10:56
To: [email protected]
Subject: Re: Shared schemas: where to put them?

Hi Peter,
thank you for your reply!

Peter Hrastnik ha scritto:
> Hi!
> 
> I had similar requirements and decided to rely on code generation by 
> WSDL2JAVA. WSDL2JAVA takes the unique shared XSD from a source 
> directory and copies it for each service. That is, I have a directory 
> wsdlDefinitions that contains service1.wsdl, service2.wsdl, and 
> common.xsd. Then I run WSDL2JAVA to generate server code with the -R 
> option, and .../MyService1/META-INF/service1.wsdl
> .../MyService1/META-INF/common.xsd
> 
> .../MyService2/META-INF/service2.wsdl
> .../MyService2/META-INF/common.xsd
> 
> are generated. I have no troubles with the replication of common.xsd 
> because I only change wsdlDefinitions/common.xsd. Generated artefacts 
> won't be touched anyway.

This could be a work-around, although it is not so convenient if all
those things are then put under version-control.
I might consider to add the replication of common.xsd in every META-INF
directory at deploy time, but this makes things more complicate than
they should and could cause a burden at development time when working
with IDEs.

I was wondering if a more clean way of doing this exists, however thank
you very much for your suggestion!

> I know that my approach above may not be appropriate in your 
> situation. If so, perhaps You can try setting the useOriginalWSDL 
> parameter in the service.xml to true. Frankly, I don't know the
effects of doing this.

Actually, I am using useOriginalWSDL="true". The problem is that if I
put things so that Axis2 can find all the WSDLs and XSDs and make the
necessary changes (e.g.: the port address, the WSDL and XSD import
locations, etc.), then things cannot be downloaded by a HTTP client;
while, if I put things so that HTTP client could access them, Axis2
cannot find all the WSDLs and XSDs anymore.

--
Mauro Molinari
Software Developer
[EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to