Re: Properties Overriding in WSDL usage

2009-07-06 Thread Willem Jiang
Hi,

I think this is a bug of CXF, if the user define the extension in the
service and binding,
 we should use the service's value.

Willem

liucong wrote:
 Hi all,
 
 In the
 SOAP/JMS(http://www.w3.org/TR/2008/WD-soapjms-20081121/#wsdl-11-properties).
 If a property is specified at multiple levels, the most specific setting
 will take precedence (port first, then service, then binding).
 
 But I invetigate the code of CXF. I find someting int
 org.apache.cxf.service.model.EndpointInfo.getTraversedExtensor(T
 defaultValue, ClassT type):
 @Override
 public T T getTraversedExtensor(T defaultValue, ClassT type) {
 T value = getExtensor(type);
 
 if (value == null) {
 if (value == null  binding != null) {
 value = binding.getExtensor(type);
 }
 
 if (service != null  value == null) {
 value = service.getExtensor(type);
 }
 
 if (value == null) {
 value = defaultValue;
 }
 }
 
 return value;
 }
 
 The code shou that:port first, then binding, then service.
 
 Now. Which is right?
 
 thanks.
 



Re: Supprot for wrapped/unwrapped styles in Mapped convention for JSON

2009-07-06 Thread Sergey Beryozkin

Hi

I'm not sure yet - it appears JSONProvider may need to be updated to handle
unwrapped cases.
Does anyone know, is it already possible to do somehow in CXF ?

Perhaps one workaround is to register a RequestFilter which will replace an
InputStream on the inbound message with another stream which will present

{name:abc}

as

{employee:{name:abc}}

for small streams (JSON ones are probably all quite small) this should work
quite well. what do you think ?

cheers, Sergey



Chaitanya-10 wrote:
 
 Hi, 
 
 I have a JAX-RS method which takes an Employee object as a param. Employee
 class is given below.
 
 @XmlRootElement
 public class Employee {
 private String name;
 
 public String getName() {
 return name;
 }
 
 public void setName(String name) {
 this.name = name;
 }
 }
 
 Unmarshalling of the JSON
 
 {employee:{name:abc}}
 
 works fine and gives an Employee object, but if the JSON input is
 
 {name:abc} 
 
 unmarshalling fails.
 
 Does CXF support both wrapped and unwrapped styles in Mapped convention
 for JSON?
 If yes what should be done to make the second case work?
 
 Thank you
 Chaithanya.
 

-- 
View this message in context: 
http://www.nabble.com/Supprot-for-wrapped-unwrapped-styles-in-Mapped-convention-for-JSON-tp24319534p24353159.html
Sent from the cxf-dev mailing list archive at Nabble.com.



Re: Supprot for wrapped/unwrapped styles in Mapped convention for JSON

2009-07-06 Thread Sergey Beryozkin

In fact, I can probably update JSON provider to do it. If it is set to
operate in 'unwrapped' mode then it will append a class name to the stream,
will do it shortly

cheers, Sergey


Sergey Beryozkin wrote:
 
 Hi
 
 I'm not sure yet - it appears JSONProvider may need to be updated to
 handle unwrapped cases.
 Does anyone know, is it already possible to do somehow in CXF ?
 
 Perhaps one workaround is to register a RequestFilter which will replace
 an InputStream on the inbound message with another stream which will
 present
 
 {name:abc}
 
 as
 
 {employee:{name:abc}}
 
 for small streams (JSON ones are probably all quite small) this should
 work quite well. what do you think ?
 
 cheers, Sergey
 
 
 
 Chaitanya-10 wrote:
 
 Hi, 
 
 I have a JAX-RS method which takes an Employee object as a param.
 Employee class is given below.
 
 @XmlRootElement
 public class Employee {
 private String name;
 
 public String getName() {
 return name;
 }
 
 public void setName(String name) {
 this.name = name;
 }
 }
 
 Unmarshalling of the JSON
 
 {employee:{name:abc}}
 
 works fine and gives an Employee object, but if the JSON input is
 
 {name:abc} 
 
 unmarshalling fails.
 
 Does CXF support both wrapped and unwrapped styles in Mapped convention
 for JSON?
 If yes what should be done to make the second case work?
 
 Thank you
 Chaithanya.
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Supprot-for-wrapped-unwrapped-styles-in-Mapped-convention-for-JSON-tp24319534p24353228.html
Sent from the cxf-dev mailing list archive at Nabble.com.



Nonce at Server Side

2009-07-06 Thread rahul.soa
Hello CXF Devs,

Does CXF have the support for processing nonce at *server* side?

As I understand from some posts CXF creates the nonce automatically when
password digest is used at client side.

If it does not have support yet at server side so does that mean we cannot
use password digest at server side as combination of timestamp, *nonce*
and password text are used to calculate the password digest. May be I read
some old post or I am wrong. Kindly correct me.

Thanks in advance.

Best Regards,
Rahul


Re: How to add wsdl extension for SOAP/JMS.

2009-07-06 Thread Daniel Kulp

Liu,

I just want to say this is very nice work.   Thanks for tackling this.   It 
almost makes  me want to go through the rest of the wsdl extension schemas and 
make them not subclass the old TExensibilityElementImpl thing.   Would 
simplify that stuff quite a bit.  

Again, nice job.

Dan


On Fri July 3 2009 9:10:04 am liucong wrote:
 Hi,
 I am writing a plugin for xjc.
 First I just modify the cxf-xjc-ts and cxf-xjc-ts-test, and make it
 work with the -Xwsdlextension, not -Xts. The pom file is also changed.
 And it works rightly.
 Then I copy the modified projects into cxf-xjc-wsdlextension and
 cxf-xjc-wsdlextension-test, and make the cxf-xjc-ts the same with the
 subversion.
 It failed. The exception is:
 [INFO]
 
 [INFO] Building Apache CXF XJC WSDL Extension Plugin Tests
 [INFO]task-segment: [install]
 [INFO]
 
 [INFO] [cxf-xml2fastinfoset:xml2fastinfoset {execution: xml2fastinfoset}]
 [INFO] [jaxb2:xjc {execution: default}]
 [INFO] Generating source...
 [INFO]
 
 [ERROR] BUILD ERROR
 [INFO]
 
 [INFO] unrecognized parameter -Xwsdlextension

 What's wrong? Do I need to do more configuration for ths xjc plugin?

 thanks!

 Daniel Kulp wrote:
  Liu,
 
  I think for stuff that are simple (basically, complexTypes with
  simpleContent and simpleType object), you cannot extend
  TExtensibilityElementImpl.   Instead, you would need to make it implement
  ExtensibilityElement interface and add the QName and required fields and
  such.
 
  Dan
 
  On Wed July 1 2009 12:18:15 pm liucong wrote:
  Hi,
 
  I do a simple experiment about the design sugguest by Dan.
  First, I use jaxb, not xjc. I think they have the principle.
 
  The schema like this[1]:
  xs:element name=deliveryMode type=soapjms:deliveryModeType /
  xs:complexType name=deliveryModeType
  xs:simpleContent
  xs:extension base=xs:string
  /xs:extension
  /xs:simpleContent
  /xs:complexType
 
  The generated class for DeliveryModeType like this[2]:
  @XmlAccessorType(XmlAccessType.FIELD)
  @XmlType(name = deliveryModeType, propOrder = {
  value
  })
  public class DeliveryModeType{
 
  @XmlValue
  protected String value;
 
  /**
   * Gets the value of the value property.
   *
   * @return
   * possible object is
   * {...@link String }
   *
   */
  public String getValue() {
  return value;
  }
 
  /**
   * Sets the value of the value property.
   *
   * @param value
   * allowed object is
   * {...@link String }
   *
   */
  public void setValue(String value) {
  this.value = value;
  }
 
  public boolean isSetValue() {
  return (this.value!= null);
  }
  }
 
  The DeliveryModeType doesn't extend TExtensibilityElementImpl. So I just
  modify the class and make it look like this[3]:
  @XmlAccessorType(XmlAccessType.FIELD)
  @XmlType(name = deliveryModeType, propOrder = {
  value
  })
  public class DeliveryModeType extends TExtensibilityElementImpl{
 
  @XmlValue
  protected String value;
 
  /**
   * Gets the value of the value property.
   *
   * @return
   * possible object is
   * {...@link String }
   *
   */
  public String getValue() {
  return value;
  }
 
  /**
   * Sets the value of the value property.
   *
   * @param value
   * allowed object is
   * {...@link String }
   *
   */
  public void setValue(String value) {
  this.value = value;
  }
 
  public boolean isSetValue() {
  return (this.value!= null);
  }
  }
 
  Then when I publish a service, I get an exception[4]
  Creating Service {http://cxf.apache.org/jms_greeter}JMSGreeterService
  from WSDL: file:./wsdl/jms_greeter.wsdl
  Exception in thread main javax.xml.ws.WebServiceException:
  org.apache.cxf.service.factory.ServiceConstructionException: Failed to
  create service.
  at
  org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:275) at
  org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:209) at
  org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderI
 mpl .java:84) at javax.xml.ws.Endpoint.publish(Endpoint.java:47)
  at demo.jms_greeter.server.Server.init(Server.java:30)
  at demo.jms_greeter.server.Server.main(Server.java:34)
  Caused by: org.apache.cxf.service.factory.ServiceConstructionException:
  Failed to create service.
  at
  org.apache.cxf.wsdl11.WSDLServiceFactory.init(WSDLServiceFactory.java:
 93) at
  

RE: Nonce at Server Side

2009-07-06 Thread Colm O hEigeartaigh

It's supported in so far as it'll get processed correctly to create the
nonce+created+password digest. But nonce-caching for replay detection
isn't supported as of yet...there's a jira open in WSS4J for it. 

Feel free to submit a patch :-)

https://issues.apache.org/jira/browse/WSS-187

Colm.

-Original Message-
From: rahul.soa [mailto:rahul@googlemail.com] 
Sent: 06 July 2009 11:56
To: dev@cxf.apache.org
Cc: Jarek Gawor
Subject: Nonce at Server Side

Hello CXF Devs,

Does CXF have the support for processing nonce at *server* side?

As I understand from some posts CXF creates the nonce automatically when
password digest is used at client side.

If it does not have support yet at server side so does that mean we
cannot
use password digest at server side as combination of timestamp,
*nonce*
and password text are used to calculate the password digest. May be I
read
some old post or I am wrong. Kindly correct me.

Thanks in advance.

Best Regards,
Rahul


Re: An Exception occurs when use wsdl extension in the port

2009-07-06 Thread Daniel Kulp

A test case (attached to a JIRA) would be good if you cannot figure this out.

However, here is a pointer:
When CXF looks in the WSDL to determine the transport factory, it looks at the 
FIRST extensor on the port that has a namespace that matches a transport 
factory.  In your first example, it would be soap and thus would match the 
soap transport.

In the second, it would be soapjms and thus probably matches the JMS 
transport and not the soap transport.   The jms transport probably doesn't 
look for soap:address.

Not sure on the best course of action to solve this.   :-( Possibly the 
soap binding could reset the address on the transport or something.   Would be 
good to check if this is the case before diving in too deep.  

Dan





On Sat July 4 2009 7:51:40 am liucong wrote:
 Hi all,
 When I implement the WSDL usage for SOAP/JMS, I encountered an exception.
 I create an service and invoke it using wsdl-first.

 If the wsdl file looks like this[1] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
;targetService=greeterService /
 soapjms:timeToLive1000/soapjms:timeToLive
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 This service works well.

 But if the wsdl file looks like this[2] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soapjms:timeToLive1000/soapjms:timeToLive
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
;targetService=greeterService /
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 The service is created correctly, but there is an error happen when I
 invoke this service.
 By debugging, I find that JMSTransportFactory.getConduit(EndpointInfo
 endpointInfo, EndpointReferenceType target)'s target parameter is null.
 It should be
 jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialContextFacto
ry=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiConnection
FactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp;targetSe
rvice=greeterService.

 I think there are someting wrong with port parsing in wsdl.
 Any ideas?

 best regards
 liu

-- 
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog


Re: An Exception occurs when use wsdl extension in the port

2009-07-06 Thread liucong
Thank you, Dan.

I just found the problem as you said.
I can make the JMSTransportFactory implement WSDLEndpointFactory
interface. And then the SOAPAddress can be used to create
createEndpointInfo. Then the problem will be solved. I'm trying to do this.

liu

Daniel Kulp wrote:
 A test case (attached to a JIRA) would be good if you cannot figure this out.

 However, here is a pointer:
 When CXF looks in the WSDL to determine the transport factory, it looks at 
 the 
 FIRST extensor on the port that has a namespace that matches a transport 
 factory.  In your first example, it would be soap and thus would match the 
 soap transport.

 In the second, it would be soapjms and thus probably matches the JMS 
 transport and not the soap transport.   The jms transport probably doesn't 
 look for soap:address.

 Not sure on the best course of action to solve this.   :-( Possibly the 
 soap binding could reset the address on the transport or something.   Would 
 be 
 good to check if this is the case before diving in too deep.  

 Dan





 On Sat July 4 2009 7:51:40 am liucong wrote:
   
 Hi all,
 When I implement the WSDL usage for SOAP/JMS, I encountered an exception.
 I create an service and invoke it using wsdl-first.

 If the wsdl file looks like this[1] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
 textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
 onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
 ;targetService=greeterService /
 soapjms:timeToLive1000/soapjms:timeToLive
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 This service works well.

 But if the wsdl file looks like this[2] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soapjms:timeToLive1000/soapjms:timeToLive
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
 textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
 onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
 ;targetService=greeterService /
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 The service is created correctly, but there is an error happen when I
 invoke this service.
 By debugging, I find that JMSTransportFactory.getConduit(EndpointInfo
 endpointInfo, EndpointReferenceType target)'s target parameter is null.
 It should be
 jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialContextFacto
 ry=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiConnection
 FactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp;targetSe
 rvice=greeterService.

 I think there are someting wrong with port parsing in wsdl.
 Any ideas?

 best regards
 liu
 

   



Re: Schema generation issues

2009-07-06 Thread Daniel Kulp

Sergey,

On Thu July 2 2009 12:59:10 pm Sergey Beryozkin wrote:
 I have problems with the JAXB schema generation.

 Consider this bean :

 @XmlRootElement(name=thebook, namespace=http://books;)
 public class Book {
   private int id;
   public Book() { }
   public int getId() { return id; }
   public void setId(int ident) { id = ident; }
 }


I think you should just add an 
@XmlType(name = book, namespace=http://books;)
Attribute to it as well.The XmlRootElement defines a root element, but 
doesn't do anything to specify how the type is mapped in.The XmlType 
annotation does that.

Dan




 JAXBContext generates these 2 schemas :

 !-- Schema 1 --
 xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema; version=1.0
 targetNamespace=http://books; xs:import schemaLocation=schema2.xsd /
 xs:element name=thebook type=book /
 /xs:schema

 !-- Schema 2 --
 xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema; version=1.0
 xs:complexType name=book
 xs:sequence
 xs:element name=id type=xs:int /
 /xs:sequence
 /xs:complexType
 /xs:schema

 The first problem I guess is to check if import in the first schema has
 no 'namespace' attribute in which case I can have 'book' complex type
 injected directly into the first schema. with the whole import being
 removed. It can get quiote hairy if 'book' type improts some other types,
 but it can be handled.

 What I'm sure about is how to figure out that when we have say a method

 public Resource() {
public Book getBook() {}
 }

 then how to ensure that Book is represented by {http://books}thebook
 qualified name in the generated doc such as wadl...

 it's not obvious to me how a link between Book and 'thebook' element can be
 established given that this info (in XmlRootElement at the moment) may come
 from various sources

 thanks, Sergey

-- 
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog


Re: Schema generation issues

2009-07-06 Thread Sergey Beryozkin

Hi Dan

thanks... I'm looking now at JAXBDatabinding's JAXBBeanInfo which looks like exactly what I need - I'm thinking of moving 
JAXBBeanInfo and JAXBContextProxy into common/utils/jaxb as at the moment it's not quite feasible to reuse JAXBDataBinding as is 
from JAX-RS due to different models. I'll be revisiting it once/if we do some WSDL2 generation


cheers, Sergey



Sergey,

On Thu July 2 2009 12:59:10 pm Sergey Beryozkin wrote:

I have problems with the JAXB schema generation.

Consider this bean :

@XmlRootElement(name=thebook, namespace=http://books;)
public class Book {
  private int id;
  public Book() { }
  public int getId() { return id; }
  public void setId(int ident) { id = ident; }
}



I think you should just add an
@XmlType(name = book, namespace=http://books;)
Attribute to it as well.The XmlRootElement defines a root element, but
doesn't do anything to specify how the type is mapped in.The XmlType
annotation does that.

Dan





JAXBContext generates these 2 schemas :

!-- Schema 1 --
xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema; version=1.0
targetNamespace=http://books; xs:import schemaLocation=schema2.xsd /
xs:element name=thebook type=book /
/xs:schema

!-- Schema 2 --
xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema; version=1.0
xs:complexType name=book
xs:sequence
xs:element name=id type=xs:int /
/xs:sequence
/xs:complexType
/xs:schema

The first problem I guess is to check if import in the first schema has
no 'namespace' attribute in which case I can have 'book' complex type
injected directly into the first schema. with the whole import being
removed. It can get quiote hairy if 'book' type improts some other types,
but it can be handled.

What I'm sure about is how to figure out that when we have say a method

public Resource() {
   public Book getBook() {}
}

then how to ensure that Book is represented by {http://books}thebook
qualified name in the generated doc such as wadl...

it's not obvious to me how a link between Book and 'thebook' element can be
established given that this info (in XmlRootElement at the moment) may come
from various sources

thanks, Sergey


--
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog 




Re: An Exception occurs when use wsdl extension in the port

2009-07-06 Thread liucong
Hi Dan,

Thank you for your good advice. I think keeping the soap stuff in the
soap binding is a very good idea.
https://issues.apache.org/jira/browse/CXF-2264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12727756#action_12727756
https://issues.apache.org/jira/browse/CXF-2264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12727756#action_12727756

liu

Daniel Kulp wrote:
 A test case (attached to a JIRA) would be good if you cannot figure this out.

 However, here is a pointer:
 When CXF looks in the WSDL to determine the transport factory, it looks at 
 the 
 FIRST extensor on the port that has a namespace that matches a transport 
 factory.  In your first example, it would be soap and thus would match the 
 soap transport.

 In the second, it would be soapjms and thus probably matches the JMS 
 transport and not the soap transport.   The jms transport probably doesn't 
 look for soap:address.

 Not sure on the best course of action to solve this.   :-( Possibly the 
 soap binding could reset the address on the transport or something.   Would 
 be 
 good to check if this is the case before diving in too deep.  

 Dan





 On Sat July 4 2009 7:51:40 am liucong wrote:
   
 Hi all,
 When I implement the WSDL usage for SOAP/JMS, I encountered an exception.
 I create an service and invoke it using wsdl-first.

 If the wsdl file looks like this[1] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
 textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
 onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
 ;targetService=greeterService /
 soapjms:timeToLive1000/soapjms:timeToLive
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 This service works well.

 But if the wsdl file looks like this[2] :
 wsdl:definitions
 wsdl:service name=JMSGreeterService
 wsdl:port binding=tns:JMSGreeterPortBinding name=GreeterPort
 soapjms:timeToLive1000/soapjms:timeToLive
 soap:address
 location=jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialCon
 textFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiC
 onnectionFactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp
 ;targetService=greeterService /
 /wsdl:port
 /wsdl:service
 /wsdl:definitions

 The service is created correctly, but there is an error happen when I
 invoke this service.
 By debugging, I find that JMSTransportFactory.getConduit(EndpointInfo
 endpointInfo, EndpointReferenceType target)'s target parameter is null.
 It should be
 jms:jndi:dynamicQueues/test.cxf.jmstransport.queue?jndiInitialContextFacto
 ry=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;jndiConnection
 FactoryName=ConnectionFactoryamp;jndiURL=tcp://localhost:61616amp;targetSe
 rvice=greeterService.

 I think there are someting wrong with port parsing in wsdl.
 Any ideas?

 best regards
 liu
 

   



Re: SOAP/TCP project status...

2009-07-06 Thread Daniel Kulp

On Sat July 4 2009 4:31:32 pm Krzysztof Wilkos wrote:
 2009/7/3 Krzysztof Wilkos kayn...@gmail.com:
  Finally I've got working client. Sun's pdf it's not enought so I ended
  with sniffing .Net communication. Tomorrow I'll clean up some code and
  submit patch.

Your comment actually got me looking at the pdf.   You're right.  Definitely 
some stuff missing there.

 https://issues.apache.org/jira/browse/CXF-2257

 I'm submiting a patch that adds soap over tcp client support. It still
 needs more error handling end more tests but seems to work. I've
 tested this with .Net service which is in SoapTcp.zip package. There
 is also .Net client which I used as a reference as Sun's pdf was not
 enough. Wireshark can't sniff over looback interface on Windows so I
 used CommView trial, than save log as .cap and decode in wireshark.

The patch is definitely a good start, but definitely needs some work before we 
get it integrated into the builds.   Apart from the legal issue you mentioned 
off list, there's a bunch of formatting things, header things, maven poms, 
etc... that we need to tackle.  The XPP dep also is an issue.  You probably 
should just be able to call our StaxUtils.createXmlStreamReader to get a 
standard StAX stream reader to accomplish that. 

Once we get that cleaned up a bit, I'd definitely like to get it into trunk 
where it will be easier to collaborate on it and review things a bit better.   
With the framing stuff in place, we should be able to start extending it for 
the more advanced things (like the FastInfoSet optimizations).


-- 
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog