You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Brecht Yperman <Br...@invenso.com> on 2006/09/20 17:08:53 UTC

[Axis2] Action mappings

Hi,

 

I have a question about action mappings.

 

I use the nightly build from September 19th.

 

I generate a wsdl-file from an AxisService generated by the
WSDL11ToAxisServiceBuilder.

 

This generates a nice wsdl, with for each operation, a mapping to action
urn:GoogleSearchAction (see below).

 

I then generate a services.xml, with for each operation that same
actionmapping.

 

 

When I try to call the doSpellingSuggestion-operation, for instance, I
get the following in the log:

 

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axiom.om.impl.builder.StAXOMBuilder  - START_ELEMENT:
{urn:GoogleSearch}doSpellingSuggestion:doSpellingSuggestion

[...]

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.RequestURIBasedDispatcher  - Checking for
Service using target endpoint address :
http://192.168.179.1:8080/axis2/services/GoogleSearchService

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.i18n.ProjectResourceBundle  -
org.apache.axis2.i18n.resource::handleGetObject(servicefound)

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.AbstractDispatcher  - Found AxisService :
GoogleSearchService

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.RequestURIBasedDispatcher  - Attempted to check
for Operation using target endpoint URI, but the operation fragment was
missing

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.Phase  - Invoking Handler
'SOAPActionBasedDispatcher' in Phase 'Transport'

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.SOAPActionBasedDispatcher  - Checking for
Operation using SOAPAction : urn:GoogleSearchAction

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.i18n.ProjectResourceBundle  -
org.apache.axis2.i18n.resource::handleGetObject(operationfound)

2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG
org.apache.axis2.engine.AbstractDispatcher  - Found AxisOperation :
doGoogleSearch

 

So it finds the wrong operation, I guess because all the
input-action-mappings are the same.

 

What am I doing wrong?

 

 

Thanks,

Brecht

 

GoogleSearchService.wsdl (generated, snippet)

<wsdl:portType name="GoogleSearchServicePortType">

                        <wsdl:operation name="doSpellingSuggestion">

                                    <wsdl:input
message="typens:doSpellingSuggestion"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearchAction"/>

                                    <wsdl:output
message="typens:doSpellingSuggestionResponse"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doSpellingSuggestionRespo
nse"/>

                        </wsdl:operation>

                        <wsdl:operation name="doGetCachedPage">

                                    <wsdl:input
message="typens:doGetCachedPage"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearchAction"/>

                                    <wsdl:output
message="typens:doGetCachedPageResponse"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doGetCachedPageResponse"/
>

                        </wsdl:operation>

                        <wsdl:operation name="doGoogleSearch">

                                    <wsdl:input
message="typens:doGoogleSearch"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearchAction"/>

                                    <wsdl:output
message="typens:doGoogleSearchResponse"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doGoogleSearchResponse"/>

                        </wsdl:operation>

            </wsdl:portType>

            <wsdl:binding name="GoogleSearchServiceSOAP11Binding"
type="typens:GoogleSearchServicePortType">

                        <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>

                        <wsdl:operation name="doSpellingSuggestion">

                                    <soap:operation
soapAction="urn:GoogleSearchAction" style="document"/>

                                    <wsdl:input>

                                                <soap:body
use="literal"/>

                                    </wsdl:input>

                                    <wsdl:output>

                                                <soap:body
use="literal"/>

                                    </wsdl:output>

                        </wsdl:operation>

                        <wsdl:operation name="doGetCachedPage">

                                    <soap:operation
soapAction="urn:GoogleSearchAction" style="document"/>

                                    <wsdl:input>

                                                <soap:body
use="literal"/>

                                    </wsdl:input>

                                    <wsdl:output>

                                                <soap:body
use="literal"/>

                                    </wsdl:output>

                        </wsdl:operation>

                        <wsdl:operation name="doGoogleSearch">

                                    <soap:operation
soapAction="urn:GoogleSearchAction" style="document"/>

                                    <wsdl:input>

                                                <soap:body
use="literal"/>

                                    </wsdl:input>

                                    <wsdl:output>

                                                <soap:body
use="literal"/>

                                    </wsdl:output>

                        </wsdl:operation>

            </wsdl:binding>

 

Services.xml

 

<?xml version="1.0" encoding="Cp1252"?>

<serviceGroup>

            <service name="GoogleSearchService">

                        <messageReceivers>

                                    <messageReceiver
mep="http://www.w3.org/2004/08/wsdl/in-out"
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>

                        </messageReceivers>

                        <parameter locked="false"
name="ServiceClass">com.invenso.xb.isp.webservices.generated.GoogleSearc
hServiceSkeleton</parameter>

                        <operation name="doSpellingSuggestion"
mep="http://www.w3.org/2004/08/wsdl/in-out">

 
<actionMapping>urn:GoogleSearchAction</actionMapping>

 
<outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doSpellingSuggest
ionResponse</outputActionMapping>

                        </operation>

                        <operation name="doGetCachedPage"
mep="http://www.w3.org/2004/08/wsdl/in-out">

 
<actionMapping>urn:GoogleSearchAction</actionMapping>

 
<outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doGetCachedPageRe
sponse</outputActionMapping>

                        </operation>

                        <operation name="doGoogleSearch"
mep="http://www.w3.org/2004/08/wsdl/in-out">

 
<actionMapping>urn:GoogleSearchAction</actionMapping>

 
<outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doGoogleSearchRes
ponse</outputActionMapping>

                        </operation>

            </service>

</serviceGroup>

 

Invenso - The "Integration Software" specialists.
_____________________________________________

Brecht Yperman
Development team

Direct: +32 (0)3 780 30 05
Email: brecht.yperman@invenso.com

INVENSO bvba
Industriepark-West 75
9100 Sint-Niklaas
Belgium - Europe

Phone: +32 (0)3 780 30 02
Fax: +32 (0)3 780 30 03
Email: info@invenso.com 
Website: www.invenso.com <http://www.invenso.com/>  

"E-mail disclaimer: This e-mail, and any attachments thereto, is
intended only for use by the addressee(s) named herein and may contain
legally privileged and/or confidential information. If you are not the
intended recipient, please note that any review, dissemination,
disclosure, alteration, printing, copying or transmission of this e-mail
and/or any file transmitted with it, is strictly prohibited and may be
unlawful. If you have received this e-mail by mistake, please
immediately notify the sender and permanently delete the original as
well as any copy of any e-mail and any printout thereof."

 


Re: [Axis2] Action mappings

Posted by Martin Gainty <mg...@hotmail.com>.
Brecht-
where is your <wsdl:definitions tag?
M-
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed.  If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy.  Thank you.



  ----- Original Message ----- 
  From: Brecht Yperman 
  To: axis-user@ws.apache.org 
  Sent: Wednesday, September 20, 2006 11:08 AM
  Subject: [Axis2] Action mappings


  Hi,

   

  I have a question about action mappings.

   

  I use the nightly build from September 19th.

   

  I generate a wsdl-file from an AxisService generated by the WSDL11ToAxisServiceBuilder.

   

  This generates a nice wsdl, with for each operation, a mapping to action urn:GoogleSearchAction (see below).

   

  I then generate a services.xml, with for each operation that same actionmapping.

   

   

  When I try to call the doSpellingSuggestion-operation, for instance, I get the following in the log:

   

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axiom.om.impl.builder.StAXOMBuilder  - START_ELEMENT: {urn:GoogleSearch}doSpellingSuggestion:doSpellingSuggestion

  [...]

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.RequestURIBasedDispatcher  - Checking for Service using target endpoint address : http://192.168.179.1:8080/axis2/services/GoogleSearchService

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.i18n.ProjectResourceBundle  - org.apache.axis2.i18n.resource::handleGetObject(servicefound)

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.AbstractDispatcher  - Found AxisService : GoogleSearchService

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.RequestURIBasedDispatcher  - Attempted to check for Operation using target endpoint URI, but the operation fragment was missing

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.Phase  - Invoking Handler 'SOAPActionBasedDispatcher' in Phase 'Transport'

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.SOAPActionBasedDispatcher  - Checking for Operation using SOAPAction : urn:GoogleSearchAction

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.i18n.ProjectResourceBundle  - org.apache.axis2.i18n.resource::handleGetObject(operationfound)

  2006-09-20 16:35:38,191 [http-8080-Processor25] DEBUG org.apache.axis2.engine.AbstractDispatcher  - Found AxisOperation : doGoogleSearch

   

  So it finds the wrong operation, I guess because all the input-action-mappings are the same.

   

  What am I doing wrong?

   

   

  Thanks,

  Brecht

   

  GoogleSearchService.wsdl (generated, snippet)

  <wsdl:portType name="GoogleSearchServicePortType">

                          <wsdl:operation name="doSpellingSuggestion">

                                      <wsdl:input message="typens:doSpellingSuggestion" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearchAction"/>

                                      <wsdl:output message="typens:doSpellingSuggestionResponse" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doSpellingSuggestionResponse"/>

                          </wsdl:operation>

                          <wsdl:operation name="doGetCachedPage">

                                      <wsdl:input message="typens:doGetCachedPage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearchAction"/>

                                      <wsdl:output message="typens:doGetCachedPageResponse" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doGetCachedPageResponse"/>

                          </wsdl:operation>

                          <wsdl:operation name="doGoogleSearch">

                                      <wsdl:input message="typens:doGoogleSearch" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearchAction"/>

                                      <wsdl:output message="typens:doGoogleSearchResponse" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:GoogleSearch:GoogleSearchPort:doGoogleSearchResponse"/>

                          </wsdl:operation>

              </wsdl:portType>

              <wsdl:binding name="GoogleSearchServiceSOAP11Binding" type="typens:GoogleSearchServicePortType">

                          <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

                          <wsdl:operation name="doSpellingSuggestion">

                                      <soap:operation soapAction="urn:GoogleSearchAction" style="document"/>

                                      <wsdl:input>

                                                  <soap:body use="literal"/>

                                      </wsdl:input>

                                      <wsdl:output>

                                                  <soap:body use="literal"/>

                                      </wsdl:output>

                          </wsdl:operation>

                          <wsdl:operation name="doGetCachedPage">

                                      <soap:operation soapAction="urn:GoogleSearchAction" style="document"/>

                                      <wsdl:input>

                                                  <soap:body use="literal"/>

                                      </wsdl:input>

                                      <wsdl:output>

                                                  <soap:body use="literal"/>

                                      </wsdl:output>

                          </wsdl:operation>

                          <wsdl:operation name="doGoogleSearch">

                                      <soap:operation soapAction="urn:GoogleSearchAction" style="document"/>

                                      <wsdl:input>

                                                  <soap:body use="literal"/>

                                      </wsdl:input>

                                      <wsdl:output>

                                                  <soap:body use="literal"/>

                                      </wsdl:output>

                          </wsdl:operation>

              </wsdl:binding>

   

  Services.xml

   

  <?xml version="1.0" encoding="Cp1252"?>

  <serviceGroup>

              <service name="GoogleSearchService">

                          <messageReceivers>

                                      <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>

                          </messageReceivers>

                          <parameter locked="false" name="ServiceClass">com.invenso.xb.isp.webservices.generated.GoogleSearchServiceSkeleton</parameter>

                          <operation name="doSpellingSuggestion" mep="http://www.w3.org/2004/08/wsdl/in-out">

                                      <actionMapping>urn:GoogleSearchAction</actionMapping>

                                      <outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doSpellingSuggestionResponse</outputActionMapping>

                          </operation>

                          <operation name="doGetCachedPage" mep="http://www.w3.org/2004/08/wsdl/in-out">

                                      <actionMapping>urn:GoogleSearchAction</actionMapping>

                                      <outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doGetCachedPageResponse</outputActionMapping>

                          </operation>

                          <operation name="doGoogleSearch" mep="http://www.w3.org/2004/08/wsdl/in-out">

                                      <actionMapping>urn:GoogleSearchAction</actionMapping>

                                      <outputActionMapping>urn:GoogleSearch:GoogleSearchPort:doGoogleSearchResponse</outputActionMapping>

                          </operation>

              </service>

  </serviceGroup>

   

  Invenso - The "Integration Software" specialists.
  _____________________________________________

  Brecht Yperman
  Development team

  Direct: +32 (0)3 780 30 05
  Email: brecht.yperman@invenso.com

  INVENSO bvba
  Industriepark-West 75
  9100 Sint-Niklaas
  Belgium - Europe

  Phone: +32 (0)3 780 30 02
  Fax: +32 (0)3 780 30 03
  Email: info@invenso.com 
  Website: www.invenso.com 

  "E-mail disclaimer: This e-mail, and any attachments thereto, is intended only for use by the addressee(s) named herein and may contain legally privileged and/or confidential information. If you are not the intended recipient, please note that any review, dissemination, disclosure, alteration, printing, copying or transmission of this e-mail and/or any file transmitted with it, is strictly prohibited and may be unlawful. If you have received this e-mail by mistake, please immediately notify the sender and permanently delete the original as well as any copy of any e-mail and any printout thereof."