[prev in list] [next in list] [prev in thread] [next in thread]
List: jboss-user
Subject: [jboss-user] [JBoss Web Services Users] - Re: Newbie: Empty
From: gwzoller <do-not-reply () jboss ! com>
Date: 2009-11-30 21:24:35
Message-ID: 21824907.1259616275975.JavaMail.jboss () nukes01 ! app ! mwc ! hst ! phx2 ! redhat ! com
[Download RAW message or body]
Ok... I have 1/2 an answer. By playing with the annotations (brute force really) I \
can now get my list going over the wire, but... I lost my WSDL.
New Interface:
@WebService
| public interface OrderTakerRemote {
| public String msg(ArrayList<String> say);
| }
|
New Impl:
@Remote(OrderTakerRemote.class)
| @WebService(endpointInterface="com.kepler.ecom.services.OrderTakerRemote")
| @SOAPBinding(style = SOAPBinding.Style.RPC)
| @Stateless
| public class OrderTaker implements OrderTakerRemote {
|
| // Default constructor.
| public OrderTaker() {
| }
|
| @WebMethod
| public String msg(ArrayList<String> say) {
| // same as before
| }
| }
I'd rather annotate the interface, not the implementation but to get it working it's \
a minor quibble.
My larger problem is the WSDL. If I specify a simple @WebService (no endpoint \
parameter) in the impl then my WSDL looks something like this: <definitions \
name="OrderTakerService" targetNamespace="http://ecom.kepler..com/"> | -
| <types>
| -
| <xs:schema targetNamespace="http://ecom.kepler.com/" version="1.0">
| <xs:element name="msg" type="tns:msg"/>
| <xs:element name="msgResponse" type="tns:msgResponse"/>
| -
| <xs:complexType name="msg">
| -
| <xs:sequence>
| <xs:element maxOccurs="unbounded" minOccurs="0" name="arg0" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| -
| <xs:complexType name="msgResponse">
| -
| <xs:sequence>
| <xs:element minOccurs="0" name="return" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| </xs:schema>
| </types>
| -
| <message name="OrderTaker_msg">
| <part element="tns:msg" name="msg"/>
| </message>
| -
| <message name="OrderTaker_msgResponse">
| <part element="tns:msgResponse" name="msgResponse"/>
| </message>
| -
| <portType name="OrderTaker">
| -
| <operation name="msg" parameterOrder="msg">
| <input message="tns:OrderTaker_msg"/>
| <output message="tns:OrderTaker_msgResponse"/>
| </operation>
| </portType>
| -
| <binding name="OrderTakerBinding" type="tns:OrderTaker">
| <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
| -
| <operation name="msg">
| <soap:operation soapAction=""/>
| -
| <input>
| <soap:body use="literal"/>
| </input>
| -
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| -
| <operation name="placeOrder_1_0">
| <soap:operation soapAction=""/>
| -
| <input>
| <soap:body use="literal"/>
| </input>
| -
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| </binding>
| -
| <service name="OrderTakerService">
| -
| <port binding="tns:OrderTakerBinding" name="OrderTakerPort">
| <soap:address location="http://127.0.0.1:8080/keplerEAR-kepler/OrderTaker"/>
| </port>
| </service>
| </definitions>
As shown in this code (with the endpoint parameter) my WSDL looks like this:
<definitions name="OrderTakerService" targetNamespace="http://ecom.kepler.com/">
| <import location="http://127.0.0.1:8080/keplerEAR-kepler/OrderTaker?wsdl&resource=OrderTakerRemote_PortType8465038229007643058.wsdl" \
namespace="http://services.ecom.kepler.aviall.com/"/> | -
| <service name="OrderTakerService">
| -
| <port binding="ns1:OrderTakerRemoteBinding" name="OrderTakerPort">
| <soap:address location="http://127.0.0.1:8080/keplerEAR-kepler/OrderTaker"/>
| </port>
| </service>
| </definitions>
Somehow my Java client was fine with the abbreviated WSDL but I'm worried a non-Java \
client may need all the detail in the longer version. The annotation combo that \
gives me the longer (more complete?) WSDL doesn't let me pass my list. The short \
WSDL passes my list.
Any ideas what's going on? What happened to all the stuff that defined the method \
calls and the parameter types?
Any ideas appreciated! Confused newbie.
Greg
View the original post : \
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4268184#4268184
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4268184
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic