Dan,

The issue is fixed. It was a problem in the OpenEJB HttpServer. Thanks for
all the help

On Thu, Jul 3, 2008 at 11:49 AM, Karan Malhi <[EMAIL PROTECTED]> wrote:

> Thanks Dan,
>
> OpenEjb has its own built in HttpServer. AFAIK, it does understand
> chunking.
>
> Below is the Calculator Service:
>
> @WebService(targetNamespace="http://superbiz.org/wsdl"; )
> public interface CalculatorWs {
>
>     public int sum(int add1, int add2);
>
>     public int multiply(int mul1, int mul2);
> }
>
>
> @Stateless
> @WebService(
>         portName = "CalculatorPort",
>         serviceName = "CalculatorWsService",
>         targetNamespace = "http://superbiz.org/wsdl";,
>         endpointInterface = "org.superbiz.calculator.CalculatorWs")
> public class CalculatorImpl implements CalculatorWs {
>
>     public int sum(int add1, int add2) {
>         return add1 + add2;
>     }
>
>     public int multiply(int mul1, int mul2) {
>         return mul1 * mul2;
>
>     }
>
> }
>
>
> On Thu, Jul 3, 2008 at 11:32 AM, Daniel Kulp <[EMAIL PROTECTED]> wrote:
>
>>
>> What is the implementation of the Calculator service running on port 4204?
>>   What is the http server/soap stack/etc...
>>
>> It's quite possible that the http server serving that service doesn't
>> understand chunking.   The older microsoft stacks certainly don't.
>>
>> Dan
>>
>>
>>
>>
>>
>> On Jul 3, 2008, at 11:23 AM, Karan Malhi wrote:
>>
>>  Also wanted to add that when I disable chunking (see below), the error
>>> goes
>>> away.
>>>
>>>   public void testCalculatorViaWsInterface() throws Exception {
>>>       Service calcService = Service.create(new URL("
>>> http://127.0.0.1:4204/CalculatorImpl?wsdl";), null);
>>>       assertNotNull(calcService);
>>>
>>>       CalculatorWs calc = calcService.getPort(CalculatorWs.class);
>>> //      Get the CXF Client. We will use it to enable logging and set the
>>> client policy to disallow chunking.
>>>       org.apache.cxf.endpoint.Client client =
>>>           org.apache.cxf.frontend.ClientProxy.getClient(calc);
>>> // Logging CXF  -- uncomment the next two lines to enable logging of SOAP
>>> requests and responses.
>>>       client.getInInterceptors().add(new LoggingInInterceptor());
>>>       client.getOutInterceptors().add(new LoggingOutInterceptor());
>>> //      Getting HTTPConduit to set client policy
>>>       HTTPConduit http = (HTTPConduit) client.getConduit();
>>>       HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
>>> // Disallow chunking -- OTHERWISE THE TEST FAILS
>>>       httpClientPolicy.setAllowChunking(false);
>>>       http.setClient(httpClientPolicy);
>>>       assertEquals(10, calc.sum(4,6));
>>>   assertEquals(12, calc.multiply(3,4));
>>>   }
>>>
>>> On Thu, Jul 3, 2008 at 11:17 AM, Karan Malhi <[EMAIL PROTECTED]>
>>> wrote:
>>>
>>>  I am trying to run the following test (am using openejb)
>>>>
>>>>  public void testCalculatorViaWsInterface() throws Exception {
>>>>       Service calcService = Service.create(new URL("
>>>> http://127.0.0.1:4204/CalculatorImpl?wsdl";), null);
>>>>       assertNotNull(calcService);
>>>>
>>>>       CalculatorWs calc = calcService.getPort(CalculatorWs.class);
>>>> //      Get the CXF Client. We will use it to enable logging and set the
>>>> client policy to disallow chunking.
>>>>       org.apache.cxf.endpoint.Client client =
>>>>           org.apache.cxf.frontend.ClientProxy.getClient(calc);
>>>> // Logging CXF  -- uncomment the next two lines to enable logging of
>>>> SOAP
>>>> requests and responses.
>>>>       client.getInInterceptors().add(new LoggingInInterceptor());
>>>>       client.getOutInterceptors().add(new LoggingOutInterceptor());
>>>>       assertEquals(10, calc.sum(4,6));
>>>>   assertEquals(12, calc.multiply(3,4));
>>>>   }
>>>>
>>>> When I try to run the above test, sometimes I get the following
>>>> exception:-
>>>>
>>>> Jul 3, 2008 11:06:51 AM
>>>> org.apache.cxf.service.factory.ReflectionServiceFactoryBean
>>>> buildServiceFromWSDL
>>>> INFO: Creating Service {http://superbiz.org/wsdl}CalculatorWsService<
>>>> http://superbiz.org/wsdl%7DCalculatorWsService>from WSDL:
>>>>
>>>> http://127.0.0.1:4204/CalculatorImpl?wsdl
>>>> Jul 3, 2008 11:07:51 AM org.apache.cxf.phase.PhaseInterceptorChain
>>>> doIntercept
>>>> INFO: Interceptor has thrown exception, unwinding now
>>>> org.apache.cxf.interceptor.Fault: Could not send Message.
>>>>   at
>>>>
>>>> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
>>>>   at
>>>>
>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:208)
>>>>   at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:276)
>>>>   at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:222)
>>>>   at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
>>>>   at
>>>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
>>>>   at $Proxy17.multiply(Unknown Source)
>>>>   at
>>>>
>>>> org.superbiz.calculator.CalculatorTest.testCalculatorViaWsInterface(CalculatorTest.java:53)
>>>>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>   at
>>>>
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>   at
>>>>
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>   at java.lang.reflect.Method.invoke(Method.java:585)
>>>>   at junit.framework.TestCase.runTest(TestCase.java:164)
>>>>   at junit.framework.TestCase.runBare(TestCase.java:130)
>>>>   at junit.framework.TestResult$1.protect(TestResult.java:110)
>>>>   at junit.framework.TestResult.runProtected(TestResult.java:128)
>>>>   at junit.framework.TestResult.run(TestResult.java:113)
>>>>   at junit.framework.TestCase.run(TestCase.java:120)
>>>>   at junit.framework.TestSuite.runTest(TestSuite.java:228)
>>>>   at junit.framework.TestSuite.run(TestSuite.java:223)
>>>>   at
>>>>
>>>> org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:35)
>>>>   at
>>>>
>>>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
>>>>   at
>>>>
>>>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
>>>>   at
>>>>
>>>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
>>>>   at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>>>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>   at
>>>>
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>   at
>>>>
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>   at java.lang.reflect.Method.invoke(Method.java:585)
>>>>   at
>>>>
>>>> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338)
>>>>   at
>>>>
>>>> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997)
>>>> Caused by: java.net.SocketTimeoutException: Read timed out
>>>>   at java.net.SocketInputStream.socketRead0(Native Method)
>>>>   at java.net.SocketInputStream.read(SocketInputStream.java:129)
>>>>   at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
>>>>   at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
>>>>   at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
>>>>   at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:681)
>>>>   at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:626)
>>>>   at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:646)
>>>>   at
>>>>
>>>> sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:957)
>>>>   at
>>>> java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:367)
>>>>   at
>>>>
>>>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1863)
>>>>   at
>>>>
>>>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1791)
>>>>   at
>>>> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
>>>>   at
>>>> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:575)
>>>>   at
>>>>
>>>> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
>>>>   ... 30 more
>>>> Jul 3, 2008 11:07:51 AM org.apache.cxf.phase.PhaseInterceptorChain
>>>> doIntercept
>>>> INFO: Interceptor has thrown exception, unwinding now
>>>> org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
>>>>   at
>>>>
>>>> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:191)
>>>>   at
>>>>
>>>> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:56)
>>>>   at
>>>>
>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:208)
>>>>   at
>>>>
>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:77)
>>>>   at
>>>>
>>>> org.apache.openejb.server.cxf.HttpDestination.invoke(HttpDestination.java:111)
>>>>   at
>>>>
>>>> org.apache.openejb.server.cxf.CxfWsContainer.processPOST(CxfWsContainer.java:114)
>>>>   at
>>>>
>>>> org.apache.openejb.server.cxf.CxfWsContainer.onMessage(CxfWsContainer.java:85)
>>>>   at
>>>>
>>>> org.apache.openejb.server.webservices.OpenEJBHttpWsRegistry$ClassLoaderHttpListener.onMessage(OpenEJBHttpWsRegistry.java:113)
>>>>   at
>>>>
>>>> org.apache.openejb.server.httpd.HttpListenerRegistry.onMessage(HttpListenerRegistry.java:43)
>>>>   at
>>>>
>>>> org.apache.openejb.server.httpd.OpenEJBHttpServer.process(OpenEJBHttpServer.java:176)
>>>>   at
>>>>
>>>> org.apache.openejb.server.httpd.OpenEJBHttpServer.processRequest(OpenEJBHttpServer.java:132)
>>>>   at
>>>>
>>>> org.apache.openejb.server.httpd.OpenEJBHttpServer.service(OpenEJBHttpServer.java:78)
>>>>   at
>>>>
>>>> org.apache.openejb.server.httpd.HttpEjbServer.service(HttpEjbServer.java:61)
>>>>   at org.apache.openejb.server.ServicePool$2.run(ServicePool.java:78)
>>>>   at org.apache.openejb.server.ServicePool$3.run(ServicePool.java:101)
>>>>   at
>>>>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>>>>   at
>>>>
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>>>>   at java.lang.Thread.run(Thread.java:595)
>>>> Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
>>>> at [row,col {unknown-source}]: [1,0]
>>>>   at
>>>> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:661)
>>>>   at
>>>> com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2134)
>>>>   at
>>>>
>>>> com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2040)
>>>>   at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
>>>>   at
>>>> com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1095)
>>>>   at
>>>>
>>>> org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:85)
>>>>   ... 17 more
>>>>
>>>>
>>>> --
>>>> Karan Singh Malhi
>>>>
>>>
>>>
>>>
>>>
>>> --
>>> Karan Singh Malhi
>>>
>>
>> ---
>> Daniel Kulp
>> [EMAIL PROTECTED]
>> http://www.dankulp.com/blog
>>
>>
>>
>>
>>
>
>
> --
> Karan Singh Malhi




-- 
Karan Singh Malhi

Reply via email to