I run the calculator-ws-webapp sample,it is ok.But I have two questions.
a)
when I use the URL
'http://localhost:8080/sample-calculator-ws-webapp/AddServiceComponent?wsdl' in
the browser,throws an exception.
java.lang.IllegalArgumentException: service path cannot be null or empty
org.apache.axis2.context.ConfigurationContext.internalGetServiceContextPath(ConfigurationContext.java:695)
org.apache.axis2.context.ConfigurationContext.setContextRoot(ConfigurationContext.java:721)
org.apache.tuscany.sca.binding.ws.axis2.TuscanyListingAgent.setContextRoot(TuscanyListingAgent.java:305)
org.apache.tuscany.sca.binding.ws.axis2.TuscanyListingAgent.processListService(TuscanyListingAgent.java:110)
org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceServlet.doGet(Axis2ServiceServlet.java:255)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.tuscany.sca.host.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:80)
org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(TuscanyServletFilter.java:88)
b)
I add uri attribute on the binding.ws,like below.
<component name="AddServiceComponent">
<implementation.java class="calculator.AddServiceImpl"/>
<service name="AddService">
<interface.java interface="calculator.AddService" />
<binding.ws
uri="http://localhost:8080/sample-calculator-ws-webapp/AddServiceComponent"/>
</service>
</component>
run the calc.jsp,throws an exception too.
org.apache.axis2.AxisFault: Transport error: 404 Error:
/sample-calculator-ws-webapp/AddServiceComponent
org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:298)
org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:192)
org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:327)
org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:206)
org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
org.apache.tuscany.sca.binding.ws.axis2.Axis2BindingInvoker.invokeTarget(Axis2BindingInvoker.java:100)
org.apache.tuscany.sca.binding.ws.axis2.Axis2BindingInvoker.invoke(Axis2BindingInvoker.java:75)
org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.invoke(DataTransformationInterceptor.java:73)
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:233)
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:130)
$Proxy8.add(Unknown Source)
calculator.CalculatorServiceImpl.add(CalculatorServiceImpl.java:54)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:105)
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:233)
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:130)
$Proxy6.add(Unknown Source)
org.apache.jsp.calc_jsp._jspService(calc_jsp.java:65)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.doFilter(TuscanyServletFilter.java:93)
Is there something wrong?
Thanks,
wang feng
On 2008-01-08, Simon Nash <[EMAIL PROTECTED]> wrote:
>I'm surprised this doesn't work. It looks like you have set this up
>just like the calculator-ws-webapp sample. I tried this sample and it
>works as expected. Can you try this sample to see if it works for you?
>
> Simon
>
>wang feng wrote:
>
>> Thanks Simon,
>>
>> I have removed jetty module and added host-webapp module.
>> But when I use ?wsdl,throws 404 not found the page error.
>>
>> My config file like this:
>> web.xml
>> <filter>
>> <filter-name>tuscany</filter-name>
>>
>> <filter-class>org.apache.tuscany.sca.host.webapp.TuscanyServletFilter</filter-class>
>>
>> </filter>
>> <filter-mapping>
>> <filter-name>tuscany</filter-name>
>> <url-pattern>/*</url-pattern>
>> </filter-mapping>
>>
>> helloworld.composite
>> <component name="HelloWorldServiceComponent">
>> <implementation.java
>> class="com.primeton.sca.ws.service.HelloWorldImpl" />
>> <service name="HelloWorldServicew">
>> <interface.wsdl
>> interface="http://helloworld#wsdl.interface(HelloWorld)" />
>> <binding.ws uri="http://localhost:8080/tmp/HelloWorldService"/>
>> </service>
>> </component>
>>
>> Application Server: tomcat
>> Application port:8080
>> Application contextpath:tmp
>>
>> When I use the url http://localhost:8080/tmp/HelloWorldService?wsdl
>> ,throws 404 error.
>>
>> I debug the code and found the registered servlet mapping uri is
>> '/tmp/HelloWorldService',
>> but when getting the servlet in TuscanyServletFilter,the inputted uri is
>> '/HelloWorldService',
>> thus not found the registered RequestDispatcher.
>>
>> Thanks,
>> wangfeng
>>
>>
>> On 2008-01-04, Simon Nash <[EMAIL PROTECTED]> wrote:
>>
>>
>>>Yes, you can do that. If this is a webapp deployment, you can omit
>>>host-tomcat
>>>and host-jetty from the embedded Tuscany runtime in the webapp, and include
>>>host-webapp instead. This will automatically use the port exposed by the
>>>webapp container.
>>>
>>> Simon
>>>
>>>wang feng wrote:
>>>
>>>
>>>>Hi,all
>>>>
>>>>I use tuscany on the application server such as jboss or weblogic or
>>>>websphere, but I have a question when I use web service binding.
>>>>
>>>>When deploying a service to webservice through webservice binding,should I
>>>>must include the module tomcat or jetty? Can I use the application
>>>>server's servelet mapping and not use the build-in tomcat or jetty module?
>>>>
>>>>Thanks
>>>>Wang Feng
>>>>
>>>>
>>>>---------------------------------------------------------------------
>>>>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]
>>>
>>
>>
>>
>>
>>
>
>
>
>---------------------------------------------------------------------
>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]