Re: Axis2 - WSDL-code sync

2008-07-11 Thread Andrew Clegg
2008/7/11 Yoav Naveh <[EMAIL PROTECTED]>:

> However, when I need to update my web service (add new function / parameter
> to an existing function) - is it possible to only update the WSDL and then
> synchronize the code against it?

The code generator won't modify existing code, it'll only overwrite AFAIK.

> Updating the code is inconvenient and regenerating the entire skeleton as
> new from the WSDL would (obviously) overwrite the class and require me to
> re-enter all the functions already implemented.

The recommended approach to this is to write classes implementing the
service interfaces yourself, in a different package, and leave the
auto-generated skeleton implementations alone. (Obviously you can copy
these as a place to start...) That way none of your code will get
overwritten. You also have to change the references to the skeletons
in services.xml to point to your own implementation classes. I do this
in an ant task like this:



info.cathdb.ws.grid.RetrieveSkeleton

info.cathdb.grid.axis2bridge.RetrieveImplementer


Let me know if that doesn't make sense and I'll attempt to explain better.

Andrew

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



Re: JAX-WS in Axis2

2008-07-08 Thread Andrew Clegg
2008/7/7 Virtual Light <[EMAIL PROTECTED]>:
> Docs for wsimport
> http://www.sws.bfh.ch/~fischli/kurse/ead/jws/jaxws-2.0-doc/wsimport.html

wsimport seems to produce quite nice code, but I have a question.
wsdl2java also produces metadata like services.xml for your services
based on the WSDL, but wsimport doesn't seem to do this. Is there
another tool in the jax-ws toolchain that does this? I'm not sure I
like the idea of independently maintaining a service definition for
each service and operation in the WSDL!

Thanks,

Andrew.

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



Re: JAX-WS in Axis2

2008-07-07 Thread Andrew Clegg
2008/7/7 Virtual Light <[EMAIL PROTECTED]>:
> JAX-WS with JAXB bindings is your best bet for compatibility across
> different SOAP engines.  Forget about the wsdl2JAVA that is in Axis2 1.4 and
> use wsimport(contract first)/wsgen(code first).  Both of these are now part
> of JDK 1.6.

Okay... Thanks. From my brief look at wsimport it does seem to produce
slightly more readable code than wsdl2java/ADB, and as long as it
doesn't choke on any of the data structures in my XSDs I should be
fine. (Is there any documentation on that anywhere?)

It still seems like there's a bit of an explanatory gulf in the Axis2
manual between the parts that refer to Axis2's own code generation
tools and data bindings, and the parts that use the JAX-WS approach...

One question. Can a JAX-WS-style service deployed in Axis2 still be
accessible via REST the way a conventional Axis2-style service can?

Thanks,

Andrew.

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



JAX-WS in Axis2

2008-07-07 Thread Andrew Clegg
Morning all,

I'm a little confused about the role of JAX-WS in Axis2. Maybe someone
can enlighten me a little. My previous WS experiences were in C# and
I've only been investigating the Java options for a month or so.

Specifically, there seems to be a lot of overlap between the features
described in this page:

http://ws.apache.org/axis2/1_4/jaxws-guide.html

and those described in this one:

http://ws.apache.org/axis2/1_4/quickstartguide.html

For example: The first talks about XML Source, SAAJ and JAXB
databinding, the second about ADB, XMLBeans and JiBX.

The first talks about using wsimport to create server classes from a
WSDL, the second talks about using wsdl2java for the same purpose.

What's going on here? To a new user this redundancy is rather
unsettling, especially given that neither of the documents really
refers to the other one. I had been using Axis2 1.3, and all the
JAX-WS stuff is new in 1.4 right? I'd been under the impression that
JAX-WS was a rival technology to Axis2, but it seems I was wrong. This
isn't helped by the fact that a lot of articles on Java WS topics are
out of date or just plain wrong, which I suppose can't be helped with
a fast moving field containing lots of inter-related strands.

My usage scenario looks like this:

- Top-down (WSDL-first) design

- WS-I compliance required

- Complex data structures in the schema

- Interopability with non-Java clients required

Should I be going down the JAX-WS route or the 'native' Axis2 route?
[Or another framework completely? ;-) ]

And with which of the many databinding options?

Many thanks,

Andrew.

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



Re: Lightweight servlet container to test web services

2008-07-03 Thread Andrew Clegg
2008/7/3 Paul Fremantle <[EMAIL PROTECTED]>:
> Andrew
>
> In tests, Axis2 is much more performant running in Tomcat or with the
> native non-blocking NIO transports that with the built-in standard
> server. We use Tomcat in an embedded way in the WSO2 Web Services App
> server (http://wso2.org/projects/wsas/java) because we found it faster
> than Jetty or the built-in classes. Synapse on the other hand uses the
> non-blocking transport because it makes more sense as an intermediary.

Thanks for the tips. We'll certainly bear that in mind when we reach
production and host it in a proper app server!

Cheers,

Andrew.

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



Re: Lightweight servlet container to test web services

2008-07-03 Thread Andrew Clegg
For production use, what are the advantages of deploying Axis2 within
a full-on application server?

We don't use any other Java web applications -- indeed, we don't use
any other Java applications at the moment -- but we are migrating some
webservices from Perl/SOAP::Lite to Java/Axis2.

Given that the rest of our web infrastructure is based on Apache,
mod_perl and legacy CGI scripts, and is likely to remain that way for
quite some time, is there any actual point in the additional overhead
of using a servlet container like Tomcat? Is it somehow more secure or
robust than Axis2's built-in http server?

Thanks,

Andrew.

2008/7/3 Paul Fremantle <[EMAIL PROTECTED]>:
> Axis and Axis2 also offer a lightweight built-in server runtime for
> testing. Just look in the bin\ directory.
>
> Paul
>
> On Thu, Jul 3, 2008 at 12:12 PM, Alexey Zavizionov
> <[EMAIL PROTECTED]> wrote:
>> Is there anybody who use maven2 and any servlet container to test web
>> services?
>> Probably, servlet container runs as maven plugin.
>>
>> Regards,
>> Alexey
>>
>
>
>
> --
> Paul Fremantle
> Co-Founder and CTO, WSO2
> Apache Synapse PMC Chair
> OASIS WS-RX TC Co-chair
>
> blog: http://pzf.fremantle.org
> [EMAIL PROTECTED]
>
> "Oxygenating the Web Service Platform", www.wso2.com
>
> -
> 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]



Re: faultstring unknown: nomination for the world's least useful error message

2008-06-27 Thread Andrew Clegg
2008/6/27 keith chapman <[EMAIL PROTECTED]>:
> Try setting these two parameters in your axis2.xml
>
> true
>
> true

Brilliant! Thanks.

Andrew.

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



faultstring unknown: nomination for the world's least useful error message

2008-06-27 Thread Andrew Clegg
Morning all,

A question for the Axis team. When a method in my class implementing a
web service (Axis2 1.3, ADB) causes a NullPointerException, the SOAP
response I get back looks like this:

http://schemas.xmlsoap.org/soap/envelope/";>
   
  
 soapenv:Server
 unknown
 
  
   


This isn't terribly informative and required me to step through the
code using remote debugging in order to find the problem. It doesn't
tell you that a Java exception has occurred at all, let alone what
kind or where it is. Also, no clues show up in the server logs, even
at the DEBUG level.

Is there an easy way to have Axis2 pass the contents of the exception
back in the message?

Thanks,

Andrew.

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



Re: XSD inheritance (via extension) in WSDLs (top-down)

2008-06-26 Thread Andrew Clegg
2008/6/26 Amila Suriarachchi <[EMAIL PROTECTED]>:

>> By the way, in the process, I hit upon a case under XMLBeans where the
>> response documents failed validation against the original WSDL. Should
>> I post a test case that demonstrates this? Or is Axis2 with XMLBeans
>> not guaranteed to produce conformant responses?
>
> Please put a jira.

Sorry, I take it back, I was doing something wrong. False alarm :-)

Andrew.

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



Re: XSD inheritance (via extension) in WSDLs (top-down)

2008-06-26 Thread Andrew Clegg
2008/6/26 Amila Suriarachchi <[EMAIL PROTECTED]>:

> Here your request should be something like this
>
>  xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:typ="http://ws.cathdb.info/Types";>
>   
>   
>  
> 
>tess
>
>
>  
>   
> 

Yep, that's what I was hoping for...

> Try to invoke this service ether using an XMLBean client or an ADB client.
> Then you can get a proper request.

Unfortunately we're developing publically available services so can't
really mandate a particular client. Also we're part of a consortium
that requires SoapUI test suites, so our schema needs to be able to
generate healthy requests in SoapUI.

I've gone for a solution involving xsd:choice elements rather than
inheritance, which seems to work fine in SoapUI and to sit more
happily with ADB than the inheritance structure did. XMLBeans just
seems unnecessarily complicated...

By the way, in the process, I hit upon a case under XMLBeans where the
response documents failed validation against the original WSDL. Should
I post a test case that demonstrates this? Or is Axis2 with XMLBeans
not guaranteed to produce conformant responses?

Andrew.

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



XSD inheritance (via extension) in WSDLs (top-down)

2008-06-25 Thread Andrew Clegg
Here's a question for the schema design gurus.

I have a document/literal wrapped WSDL which defines an operation
called SubmitBLAST. The corresponding element for the input message
looks like this:









AminoAcidSeqData is, in turn, an abstract type:



which various concrete types extend, e.g.:












This passes WS-I compliance, and I've generated my service with
wsdl2java (using XMLBeans) with no problems. However, I've hit upon a
snag in testing the WSDL with SoapUI. It autogenerates messages from
the WSDL that look like this:

http://schemas.xmlsoap.org/soap/envelope/";
xmlns:typ="http://ws.cathdb.info/Types";>
   
   
  
 
  
   


So there's no skeleton generated for any of the possible
instantiations of the abstractly-typed element query_data. And
anything I put in there fails XML Beans validation on the server side,
even if I know it matches the structure, with this error:

Document invalid: [error: cvc-elt.2: Element
'[EMAIL PROTECTED]://grid.cathdb.info/Types' is abstract and
cannot be used in an instance]

Am I barking up the wrong tree here, and expecting too much
'cleverness' from the code generators (in Axis2 or SoapUI)?

Ideally I'd like to be able to send different messages for each of the
concrete implementations of AminoAcidSeqData that are reconstructed on
the server side into the appropriate objects. Is there a better way to
do this?

Many thanks,

Andrew.

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



Re: "An error occurred while completing process -java.lang.reflect.InvocationTargetException"

2008-06-25 Thread Andrew Clegg
2008/6/25 Pedro Felipe <[EMAIL PROTECTED]>:

> When I tryed to generate the WSDL from a Java file (Operation -
> Java2WSDL) nothing happens.
> In the last screen ("Select the location for the generated WSDL") apears a
> message: "An error occurred while
> completing process -java.lang.reflect.InvocationTargetException".
> The plugin didn't do nothing. I checked the folders and no wsdl file was
> generated.

Which version are you using? I went back from using 1.4 to 1.3 because
the Eclipse plugin seemed to be missing some required jars. If I
remember right, the symptoms were similar to this. I think if you run
Eclipse from the command line, the full text and stack trace of the
exception will be printed out when this happens, which might help
debug it.

Andrew.

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



Re: SOAP fault "Could not initialize class ..."

2008-06-24 Thread Andrew Clegg
I've figured it out. For posterity:

I was following the deployment instructions in Kent Ka Iok Tong's book
Developing Web Services With Apache Axis2, which doesn't cover aar
files, and instead just tells you to deploy your services by copying
the build directory into the repository.

While this seems to work happily enough for simple ADB services, it
doesn't seem to work for XMLBeans -- the schemaorg_apache_xmlbeans
tree is tucked away inside the resources directory so Axis2 can't find
it. When I followed the deployment instructions in the Advanced User
Guide it all came together.

Hopefully this followup will help someone else avoid the same mistake...

Andrew.

2008/6/24 Andrew Clegg <[EMAIL PROTECTED]>:
> Afternoon all,
>
> I'm trying to get some XMLBeans-based service stubs in place and I'm
> hitting an odd problem which I can't find any reference to via Google.
>
> The services deploy to the server fine, with no error messages, and I
> can see them in http://localhost:8080/axis2/services/ and view the
> WSDLs. Everything looks okay.
>
> The built-in Version service works okay, but whenever I try to run one
> of mine (e.g. via SoapUI), I get a response like this:
>
>
> http://schemas.xmlsoap.org/soap/envelope/";>
>   
>  
> soapenv:Server
> Could not initialize class
> info.cathdb.ws.types.TestEchoDocument
> 
>  
>   
> 
>
>
> (This is for a service called Test with a TestEcho operation, the
> classic 'hello world' for request/response services.)
>
> I have checked in my repository and TestEchoDocument.class is exactly
> where it should be, in info.cathdb.ws.types, having compiled with no
> errors.
>
> The Java code in TestSkeleton.java looks like this:
>
>
>public info.cathdb.ws.types.TestEchoResponseDocument TestEcho(
>info.cathdb.ws.types.TestEchoDocument testEcho0) {
>TestEchoResponseDocument rDoc =
> TestEchoResponseDocument.Factory.newInstance();
>TestEchoResponse r = rDoc.addNewTestEchoResponse();
>r.setOutputText( testEcho0.getTestEcho().getInputText() );
>return rDoc;
>}
>
>
> Please let me know if I'm doing something completely wrong! I can post
> the WSDL and XSD (or the relevant parts) if that would help.
>
> Also, on a related note, if I change the TestEcho method to throw back
> an exception instead, the text of the exception isn't reflected in the
> soap message returned. It just says:
>
>
> http://schemas.xmlsoap.org/soap/envelope/";>
>   
>  
> soapenv:Server
> unknown
> 
>  
>   
> 
>
>
> Is there a way to have Axis2 pass the exception text back to the
> client? This would be quite helpful for debugging.
>
> Thanks in advance for any suggestions, and sorry if any of these
> questions have obvious answers, I'm a complete Axis newbie.
>
> Cheers,
>
> Andrew.
>

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



SOAP fault "Could not initialize class ..."

2008-06-24 Thread Andrew Clegg
Afternoon all,

I'm trying to get some XMLBeans-based service stubs in place and I'm
hitting an odd problem which I can't find any reference to via Google.

The services deploy to the server fine, with no error messages, and I
can see them in http://localhost:8080/axis2/services/ and view the
WSDLs. Everything looks okay.

The built-in Version service works okay, but whenever I try to run one
of mine (e.g. via SoapUI), I get a response like this:


http://schemas.xmlsoap.org/soap/envelope/";>
   
  
 soapenv:Server
 Could not initialize class
info.cathdb.ws.types.TestEchoDocument
 
  
   



(This is for a service called Test with a TestEcho operation, the
classic 'hello world' for request/response services.)

I have checked in my repository and TestEchoDocument.class is exactly
where it should be, in info.cathdb.ws.types, having compiled with no
errors.

The Java code in TestSkeleton.java looks like this:


public info.cathdb.ws.types.TestEchoResponseDocument TestEcho(
info.cathdb.ws.types.TestEchoDocument testEcho0) {
TestEchoResponseDocument rDoc =
TestEchoResponseDocument.Factory.newInstance();
TestEchoResponse r = rDoc.addNewTestEchoResponse();
r.setOutputText( testEcho0.getTestEcho().getInputText() );
return rDoc;
}


Please let me know if I'm doing something completely wrong! I can post
the WSDL and XSD (or the relevant parts) if that would help.

Also, on a related note, if I change the TestEcho method to throw back
an exception instead, the text of the exception isn't reflected in the
soap message returned. It just says:


http://schemas.xmlsoap.org/soap/envelope/";>
   
  
 soapenv:Server
 unknown
 
  
   



Is there a way to have Axis2 pass the exception text back to the
client? This would be quite helpful for debugging.

Thanks in advance for any suggestions, and sorry if any of these
questions have obvious answers, I'm a complete Axis newbie.

Cheers,

Andrew.

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



Ant codegen very slow in Eclipse

2008-06-23 Thread Andrew Clegg
Does anyone else find that the Ant code generation task is very slow
when run in Eclipse?

My WSDL file takes 18 seconds to convert to Java from an Ant task on
the command line (and about the same or less if using wsdl2java.sh)
but takes about 9-10 MINUTES if the same Ant task is started from
Eclipse.

I'm running Eclipse Ganymede RC4, Sun Java 1.6.0_06-b02, and Axis2 1.3.

Looking around on Google, there do seem to be some issues in general
with Ant performance within Eclipse under Java 1.6, but I was
wondering if anyone had hit this particular one and figured out a fix.

Many thanks,

Andrew.

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



Re: Multiple services from one WSDL... advice?

2008-06-23 Thread Andrew Clegg
2008/6/22 Amila Suriarachchi <[EMAIL PROTECTED]>:

>> So instead I'm planning on keeping them in separate services, and
>> writing a custom Ant task that runs the code generator three times and
>> deploys three separate services to the server.
>
> If you have three services you don't have to do this. Wsdl2java tool will
> generate three skeltons and three  services in service.xml.

Wow, I had no idea that worked. I'd just been using the Eclipse
plugin, which forces you to choose between the services in the WSDL.
(At least it does in 1.3, is this changed in 1.4?)

Thanks for the tip. One thing I've noticed though -- the generated
WSDLs in the target resources directory are a little bit strange.
Although each one contains just one service definition, they all
contain all the bindings and port types for all of the services in the
original WSDL, even the ones that aren't in use. I've attached one of
mine for reference, in case anyone who is working on the codegen tools
wants to have a look.

I doubt it's a problem, but it's the kind of thing I could see
badly-designed clients throwing errors over...

Now to get it all working in Ant.

Cheers,

Andrew.

http://ws.cathdb.info/Grid"; xmlns="http://ws.cathdb.info/Grid"; xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; xmlns:types="http://ws.cathdb.info/Types";>
  

			http://ws.cathdb.info/Types"; schemaLocation="xsd0.xsd"/>
		
  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


  
  


TODO.
			
  

  


  
  


Check the status of a job: -1 = failure, 1 = complete, <1 = running.
The higher the number, the closer to completion the job is.
			
  

  


  
  


Scan a given protein sequence against the representative sequences (Sreps)
for each of CATH's 35% sequence identity (S35) clusters, using BLASTP.
			
  

  




Scan a given protein sequence against the representative sequences (Sreps)
for each of CATH's 35% sequence identity (S35) clusters, using the
Needleman-Wunsch algorithm.
			
  

  




Scan a given protein sequence against CATH's library of HMMER profiles,
with an e-value cutoff of 0.001.
			
  

  




Scan a given protein sequence against CATH's library of HMMER profiles,
then runs DomainFinder over the hits.
			
  

  




TODO.
			
  

  




TODO.
			
  

  


  
  
http://schemas.xmlsoap.org/soap/http"/>

  http://ws.cathdb.info/Grid/MonitorJob"/>
  

  
  

  

  
  
http://schemas.xmlsoap.org/soap/http"/>

  http://ws.cathdb.info/Grid/RetrieveJob"/>
  

  
  

  

  
  
http://schemas.xmlsoap.org/soap/http"/>

  http://ws.cathdb.info/Grid/SubmitBlast"/>
  

  
  

  


  http://ws.cathdb.info/Grid/SubmitNw"/>
  

  
  

  


  http://ws.cathdb.info/Grid/SubmitHmmer"/>
  

  
  

  


  http://ws.cathdb.info/Grid/SubmitHmmerDf"/>
  

  
  

  


  http://ws.cathdb.info/Grid/SubmitSam"/>
  

  
  

  


  http://ws.cathdb.info/Grid/SubmitSamDf"/>
  

  
  

  

  
  

			This is the web service interface onto the CATH database, allowing various useful processing stages
			from the CATH production pipeline to be invoked individually. All jobs are run asynchronously on our
			server farm (FILL IN DETAILS). Each job is started via a Submit... operation which returns a JobID. This
			can be used to monitor the status of the job via MonitorJob, which returns a value between 0 and 1
			representing (roughly) percentage complete, or -1 to indicate that the job has failed. After MonitorJob
			for a given job returns 1, the job is done, and its results can be retrieved via the corresponding
			Retrieve... operation. Please contact [EMAIL PROTECTED] with any comments or questions.
		

  http://ws.cathdb.info/Grid"/>

  

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

Re: Multiple services from one WSDL... advice?

2008-06-20 Thread Andrew Clegg
2008/6/20 Willard, Jonathan <[EMAIL PROTECTED]>:

>
>
>
>
>  
>  
>  
>  
>  
>
>
>  
>
>
>

Great stuff, thanks for the example, I reckon I can get things working
pretty similarly here.

Cheers,

Andrew.

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



Re: Multiple services from one WSDL... advice?

2008-06-20 Thread Andrew Clegg
Hi Jon, thanks for the tips. I've stayed on-list for the benefit of
future searchers...

2008/6/20 Willard, Jonathan <[EMAIL PROTECTED]>:

> I am building multiple services that get bundled into one .aar file.  I
> have a servcies.xml file that uses this structure
>
> 
>
>
> 

It's good to know someone else is doing something similar. How do you
bundle several services into a single aar? Could you post an ant or
makefile example? I wasn't even sure if this was possible from my
(admittedly brief) docs search.

I've got my setup working a bit like this, but with a separate
resources folder and services.xml for each. It would be nice to be
able to package up all three services, plus the types derived from the
shared XML Schema which are in a different location, so I can deploy
them to the server together.

> And a build system using legacy makefiles and ant to build each service
> separately.  I have directory that contains the services, each in a
> separate package and a directory that contains the test clients, each in
> a separate package.  This works well for me.  I can compile all the
> services using java2wsdl and then compile all the clients using
> wsdl2java.  I use eclipse too and all the services are in one project
> but the compiling is all done with the legacy makefiles/ant system on
> the command line / cygwin shell.  The only draw back to this is that
> sometimes I have to refresh Eclipse to see the stub changes.

Have you considered migrating the make bits into ant, and then kicking
them off from Eclipse as custom project builders? That's what I'm
aiming for when I get the manual build process working happily.

Cheers,

Andrew.

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



Multiple services from one WSDL... advice?

2008-06-20 Thread Andrew Clegg
Morning folks, a new Axis2 user here seeking some sage advice.

I'm working on a new WS interface for a scientific compute farm, using
Axis2 to generate server classes from WSDLs. The WSDLs currently
define three services: Submit, Monitor and Retrieve.

Submit offers various operations for submitting jobs of various kinds
to the farm for processing, each of which returns a JobID. Monitor
provides operations for checking the status of jobs, nodes etc.
Retrieve contains operations for getting the results of finished jobs
back in several different formats.

Submit, Monitor and Retrieve are currently separate services but I
would be happy putting them in as separate ports within one service.
Ideally, I'd like to be able to run the code generator once on a
single master WSDL, and generate stubs for all three services/ports --
but this isn't allowed. (At least in 1.3, which we are using -- has
this changed in 1.4?)

So instead I'm planning on keeping them in separate services, and
writing a custom Ant task that runs the code generator three times and
deploys three separate services to the server. Each of the three would
need separate directories for src, resources and bin, in order to
avoid clashes. We're working in Eclipse but don't want to set up
completely separate projects for the three services, because of (a)
the amount of back-end code that'll be shared between them and (b) the
fact that we want to keep them together in Subversion to simplify
versioning.

In your experience, would this work, or can you think of a better way?
Are there any other 'gotchas' I should look out for?

Thanks in advance,

Andrew.

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