Martin,

Thanks for all the details.  I hadn't considered the client generation at this 
stage, and was planning on just relying on the published wsdl for business 
consumers to use whatever package they wanted to generate a client from the 
public wsdl - perhaps this is not a realistic expectation.  None the less 
thanks for the pom excludes / targets.  They should prove useful if I go down 
that route. I'm leaning toward CXF at the moment as I think it won't be a huge 
step from XFire

Regards,
Jim.

-----Original Message-----
From: Martin Strand [mailto:do.not.eat.yellow.s...@gmail.com] 
Sent: 29 August 2010 19:07
To: Tapestry users
Subject: Re: OT: Web Services

On Sun, 29 Aug 2010 19:35:11 +0200, Jim O'Callaghan
<j...@peritussolutions.com> wrote:

> I'm aware this is off topic, but since there are so many people on the  
> list
> with a broad skill set am hoping I can learn from their experiences /
> heartbreak.  I am evaluating various WS stacks for interfacing with a  
> system
> - currently I am using XFire as it requires very little configuration and
> performs quite efficiently.  XFire appears to qualify every xml element  
> with
> a namespace, bloating the payload considerably, or, if using the patch  
> from
> http://jira.codehaus.org/browse/XFIRE-687 appears to have unreliable /
> inconsistent namespace qualifiers.  Can anyone recommend a good WS stack
> they have positive experience of?  My constraints are quite liberal -  
> java
> 1.5 up, currently jetty as an AS, spring 3.0.2.RELEASE.  Is CXF any  
> good?  I
> want to find something with good performance obviously, minimal config,  
> and
> hopefully something that consistently defines package level namespaces  
> at an
> envelope level and reuses them.
>
>
> Many thanks,
>
> Jim.

I've been using axis2 for several years to generate clients for a few 3rd  
party web services (I presume you're talking about client code)

Can't really say I would *recommend* it because it was a pain to get it  
working with Maven and I haven't even bothered to go through that again  
with 1.4.x or 1.5.x so I'm still using 1.3.
But, it's very simple once you set up the build - Maven will generate  
POJOs in target/generated-sources/... and when you invoke methods on those  
POJOs everything "just works".
The axis2 1.3 POMs are a mess though so there are lots of excludes here to  
get rid of unnecessary dependencies:








<plugin>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-wsdl2code-maven-plugin</artifactId>
        <executions>
                <execution>
                        <id>some-service</id>
                        <goals>
                                <goal>wsdl2code</goal>
                        </goals>
                        <configuration>
                                
<wsdlFile>${basedir}/src/main/wsdl/some-service.wsdl</wsdlFile>
                                <packageName>com.example.service</packageName>
                                
<namespaceToPackages>com.example.service=com.example.service</namespaceToPackages>
                                <syncMode>sync</syncMode>
                        </configuration>
                </execution>
                <execution>
                        <id>some-other-service</id>
                        <goals>
                                <goal>wsdl2code</goal>
                        </goals>
                        <configuration>
                                
<wsdlFile>${basedir}/src/main/wsdl/some-other-service.wsdl</wsdlFile>
                                <packageName>com.example.other</packageName>
                                
<namespaceToPackages>com.example.other=com.example.other</namespaceToPackages>
                                <syncMode>sync</syncMode>
                        </configuration>
                </execution>
        </executions>
</plugin>


...


<dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-kernel</artifactId>
        <version>1.3</version>
        <exclusions>
                <exclusion>
                        <groupId>avalon-framework</groupId>
                        <artifactId>avalon-framework</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>backport-util-concurrent</groupId>
                        <artifactId>backport-util-concurrent</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>javax.mail</groupId>
                        <artifactId>mail</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>javax.activation</groupId>
                        <artifactId>activation</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>servlet-api</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>commons-fileupload</groupId>
                        <artifactId>commons-fileupload</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>junit</groupId>
                        <artifactId>junit</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.woden</groupId>
                        <artifactId>woden</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.geronimo.specs</groupId>
                        <artifactId>geronimo-jms_1.1_spec</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>xml-apis</groupId>
                        <artifactId>xml-apis</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.codehaus.woodstox</groupId>
                        <artifactId>wstx-asl</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>annogen</groupId>
                        <artifactId>annogen</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>xalan</groupId>
                        <artifactId>xalan</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>stax</groupId>
                        <artifactId>stax-api</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>jaxen</groupId>
                        <artifactId>jaxen</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>commons-io</groupId>
                        <artifactId>commons-io</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.httpcomponents</groupId>
                        <artifactId>httpcore-niossl</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.httpcomponents</groupId>
                        <artifactId>httpcore</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.httpcomponents</groupId>
                        <artifactId>httpcore-nio</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>xerces</groupId>
                        <artifactId>xercesImpl</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.ws.commons.axiom</groupId>
                        <artifactId>axiom-dom</artifactId>
                </exclusion>
        </exclusions>
</dependency>
<dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-adb</artifactId>
        <version>1.3</version>
        <exclusions>
                <exclusion>
                        <groupId>org.apache.ws.commons.axiom</groupId>
                        <artifactId>axiom-dom</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>commons-io</groupId>
                        <artifactId>commons-io</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>xerces</groupId>
                        <artifactId>xercesImpl</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.codehaus.woodstox</groupId>
                        <artifactId>wstx-asl</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>org.apache.geronimo.specs</groupId>
                        <artifactId>
                                geronimo-activation_1.1_spec
                        </artifactId>
                </exclusion>
                <exclusion>
                        <groupId>javax.mail</groupId>
                        <artifactId>mail</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>javax.activation</groupId>
                        <artifactId>activation</artifactId>
                </exclusion>
                <exclusion>
                        <groupId>xalan</groupId>
                        <artifactId>xalan</artifactId>
                </exclusion>
        </exclusions>
</dependency>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to