Bugs item #1089017, was opened at 2004-12-21 13:18
Message generated for change (Comment added) made by ektak
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=1089017&group_id=22866

Category: JBossWS
Group: None
Status: Open
Resolution: None
Priority: 9
Submitted By: Ekta (ektak)
Assigned to: Thomas Diesler (tdiesler)
Summary: ERROR org.jboss.webservice.client.PortProxy[main] - Port err

Initial Comment:
Hi,

I am using jbossws with jboss 4.0.0 version.


Problem :-
      in ServiceEndpointInterface if i use only one 
argument(either primitive data type or Custom data type 
like array of custom bean) it works fine. but when i am 
using two argument in a method of 
ServiceEndpointInterface  then it is giving me following 
error
   [mkdir] Created dir: D:\Ekta\Projects\jboss-
ws4ee\jbossws-21-Dec-2004\test\test-1\src-
original\output-samples\reports
   [junit] Running com.myapp.ekta.HelloWorldTestCase
   [junit] 2004-12-21 18:20:24,449 ERROR 
org.jboss.webservice.client.PortProxy[main] - Port error
   [junit] java.lang.NullPointerException
   [junit]     at 
org.apache.axis.client.AxisClientProxy.proxyParams2CallPa
rams(AxisClientProxy.java:130)
   [junit]     at 
org.apache.axis.client.AxisClientProxy.invoke
(AxisClientProxy.java:249)
   [junit]     at $Proxy2.echoHelloArr(Unknown Source)
   [junit]     at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)
   [junit]     at 
sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
   [junit]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
   [junit]     at java.lang.reflect.Method.invoke
(Method.java:324)
   [junit]     at 
org.jboss.webservice.client.PortProxy.invoke
(PortProxy.java:93)
   [junit]     at $Proxy2.echoHelloArr(Unknown Source)
   [junit]     at 
com.myapp.ekta.HelloWorldTestCase.testHelloArray
(HelloWorldTestCase.java:50)
   [junit]     at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)
   [junit]     at 
sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
   [junit]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
   [junit]     at java.lang.reflect.Method.invoke
(Method.java:324)
   [junit]     at junit.framework.TestCase.runTest
(TestCase.java:154)
   [junit]     at junit.framework.TestCase.runBare
(TestCase.java:127)
   [junit]     at junit.framework.TestResult$1.protect
(TestResult.java:106)
   [junit]     at junit.framework.TestResult.runProtected
(TestResult.java:124)
   [junit]     at junit.framework.TestResult.run
(TestResult.java:109)
   [junit]     at junit.framework.TestCase.run
(TestCase.java:118)
   [junit]     at junit.framework.TestSuite.runTest
(TestSuite.java:208)
   [junit]     at junit.framework.TestSuite.run
(TestSuite.java:203)
   [junit]     at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRun
ner.run(JUnitTestRunner.java:325)
   [junit]     at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRun
ner.main(JUnitTestRunner.java:536)
   [junit] Tests run: 1, Failures: 0, Errors: 1, Time 
elapsed: 4.219 sec
   [junit] TEST com.myapp.ekta.HelloWorldTestCase 
FAILED




Description :-
     like in my HelloOrderEndpoint.java when i used only 
one argument

   public HelloArray echoHelloArr(HelloArray helloArr)
           throws java.rmi.RemoteException;
                        -------------- > it works fine.

but when i just add one more string parameter
eg :
   public HelloArray echoHelloArr(HelloArray helloArr, 
String str)
           throws java.rmi.RemoteException;
it is giving me  
ERROR "org.jboss.webservice.client.PortProxy[main] - 
Port error"

 
/***************************************/
Hello.java        :- 
===========
package com.myapp.ekta;

public class Hello
{
   private String helloID;
   private String helloName;
   private String helloAddress;

   public String getHelloID()
   {
      return helloID;
   }

   public void setHelloID(String helloID)
   {
      this.helloID = helloID;
   }

   public String getHelloAddress()
   {
      return helloAddress;
   }

   public void setHelloAddress(String helloAddress)
   {
      this.helloAddress = helloAddress;
   }

   public String getHelloName()
   {
      return helloName;
   }

   public void setHelloName(String helloName)
   {
      this.helloName = helloName;
   }

   public int hashCode()
   {
      return toString().hashCode();
   }

   public boolean equals(Object obj)
   {
      return toString().equals("" + obj);
   }

   public String toString()
   {
      return "[cuid=" + helloID + ",name=" + helloName 
+ ",address=" + helloAddress + "]";
   }

}
/***************************************/
HelloArray.java :-
===============================
package com.myapp.ekta;

import java.util.Arrays;

public class HelloArray
{
   private Hello[] helloArray;

   public Hello[] getHelloArray()
   {
      return helloArray;
   }

   public void setHelloArray(Hello[] helloArray)
   {
      this.helloArray = helloArray;
   }

   public int hashCode()
   {
      return toString().hashCode();
   }

   public boolean equals(Object obj)
   {
      return toString().equals("" + obj);
   }

   public String toString()
   {
      return (helloArray != null ? Arrays.asList
(helloArray).toString() : "[]");
   }

}
/***************************************/
HelloOrderEndpoint.java :-
========================

package com.myapp.ekta;

public interface HelloOrderEndpoint
        extends java.rmi.Remote
{

   public HelloArray echoHelloArr(HelloArray helloArr, 
String str)
           throws java.rmi.RemoteException;

}


/***************************************/

HelloOrderService.java :-
 ================
package com.myapp.ekta;

import javax.xml.rpc.*;
import javax.xml.rpc.server.ServiceLifecycle;
import java.rmi.RemoteException;

public class HelloOrderService implements 
HelloOrderEndpoint, ServiceLifecycle
{
   public HelloArray echoHelloArr(HelloArray helloArray, 
String str)throws RemoteException
   {
      System.out.println("echoHelloArr: " + helloArray);
      return helloArray;
   }

   public void init(Object arg0) throws ServiceException {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see javax.xml.rpc.server.ServiceLifecycle#destroy
()
     */
    public void destroy() {
        // TODO Auto-generated method stub

    }


}

/***************************************/
HelloOrderService.wsdl         :-
=====================

<?xml version="1.0" encoding="UTF-8"?>

<definitions name="HelloOrderService" 
targetNamespace="http://myapp.com/ekta"; 
xmlns:tns="http://myapp.com/ekta"; 
xmlns="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
xmlns:ns2="http://myapp.com/ekta/types"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";>
  <types>
    <schema 
targetNamespace="http://myapp.com/ekta/types"; 
xmlns:tns="http://myapp.com/ekta/types"; xmlns:soap11-
enc="http://schemas.xmlsoap.org/soap/encoding/"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns="http://www.w3.org/2001/XMLSchema";>
      <complexType name="echoHelloArr">
        <sequence>
          <element name="HelloArray_1" 
type="tns:HelloArray" nillable="true"/>
          <element name="String_2" type="string" 
nillable="true"/>
        </sequence>
      </complexType>
      <complexType name="HelloArray">
        <sequence>
          <element name="helloArray" type="tns:Hello" 
nillable="true" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
      </complexType>
      <complexType name="Hello">
        <sequence>
          <element name="helloAddress" type="string" 
nillable="true"/>
          <element name="helloID" type="string" 
nillable="true"/>
          <element name="helloName" type="string" 
nillable="true"/>
        </sequence>
      </complexType>
      <complexType name="echoHelloArrResponse">
        <sequence>
          <element name="result" type="tns:HelloArray" 
nillable="true"/>
        </sequence>
      </complexType>
      <element name="echoHelloArr" 
type="tns:echoHelloArr"/>
      <element name="echoHelloArrResponse" 
type="tns:echoHelloArrResponse"/>
    </schema>
  </types>
  <message name="HelloOrderEndpoint_echoHelloArr">
    <part name="parameters" 
element="ns2:echoHelloArr"/>
  </message>
  <message 
name="HelloOrderEndpoint_echoHelloArrResponse">
    <part name="result" 
element="ns2:echoHelloArrResponse"/>
  </message>
  <portType name="HelloOrderEndpoint">
    <operation name="echoHelloArr">
      <input 
message="tns:HelloOrderEndpoint_echoHelloArr"/>
      <output 
message="tns:HelloOrderEndpoint_echoHelloArrResponse"/
>
    </operation>
  </portType>
  <binding name="HelloOrderEndpointBinding" 
type="tns:HelloOrderEndpoint">
    <soap:binding 
transport="http://schemas.xmlsoap.org/soap/http"; 
style="document"/>
    <operation name="echoHelloArr">
      <soap:operation soapAction=""/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation
  </binding>
  <service name="HelloOrderService">
    <port name="HelloOrderEndpointPort" 
binding="tns:HelloOrderEndpointBinding">
      <soap:address 
location="http://localhost:8070/samples-
complexbean/HelloOrderService"/>
    </port>
  </service
</definitions>

/***************************************/
application.xml   :- 
==================
<?xml version="1.0" encoding="UTF-8"?>

<application xmlns="http://java.sun.com/xml/ns/j2ee";  
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/application_1_4.xsd";
  version="1.4">

  <display-name>webservice client test</display-name>

  <module>
    <java>samples-complexbean-client.jar</java>
  </module>
  <module>
    <java>samples-complexbean.war</java>
  </module>
</application>

/***************************************/
application-client.xml :-
=======================
<?xml version="1.0" encoding="UTF-8"?>

<application-client 
xmlns="http://java.sun.com/xml/ns/j2ee";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/application-
client_1_4.xsd"
  version="1.4">

  <display-name>webservice client app</display-name>
  
  <service-ref>
    <service-ref-name>HelloOrderService</service-ref-
name>
    <service-interface>javax.xml.rpc.Service</service-
interface>
    <wsdl-file>META-
INF/wsdl/HelloOrderService.wsdl</wsdl-file>
    <jaxrpc-mapping-file>META-INF/jaxrpc-
mapping.xml</jaxrpc-mapping-file>
  </service-ref>

</application-client>
/***************************************/
jaxrpc-mapping.xml      :-
========================
<?xml version="1.0" encoding="UTF-8"?>

<java-wsdl-mapping 
xmlns="http://java.sun.com/xml/ns/j2ee";
  xmlns:impl="http://myapp.com/ekta";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mappi
ng_1_1.xsd"
  version="1.1">

  <package-mapping>
    <package-type>com.myapp.ekta</package-type>
    
<namespaceURI>http://myapp.com/ekta</namespaceURI
>
  </package-mapping>
  <package-mapping>
    <package-type>com.myapp.ekta</package-type>
    
<namespaceURI>http://myapp.com/ekta/types</namesp
aceURI>
  </package-mapping>

</java-wsdl-mapping>
/***************************************/
jboss-client.xml :-
=================

<?xml version='1.0' encoding='UTF-8' ?>

<!DOCTYPE jboss-client PUBLIC
   "-//JBoss//DTD Application Client 3.2//EN"
   "http://www.jboss.org/j2ee/dtd/jboss-client_3_2.dtd";>

<jboss-client>
   <jndi-name>ws4ee-client</jndi-name>
</jboss-client>

/***************************************/
jboss-web.xml :-
=============

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web 
Application 
2.2//EN" "http://www.jboss.org/j2ee/dtd/jboss-
web.dtd">

<jboss-web>
  <context-root>/samples-complexbean</context-root>
</jboss-web>

/***************************************/
web.xml:-
=============
<?xml version="1.0" encoding="UTF-8"?>
<web-app 
     xmlns="http://java.sun.com/xml/ns/j2ee";
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
     
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd";
     version="2.4">

    <servlet>
        <servlet-name>HelloOrderService</servlet-name>
        <servlet-
class>com.myapp.ekta.HelloOrderService</servlet-class>
    </servlet>
    
    <servlet-mapping>
      <servlet-name>HelloOrderService</servlet-name>
      <url-pattern>/HelloOrderService</url-pattern>
   </servlet-mapping>
    
   <welcome-file-list>
      <welcome-file>index.html</welcome-file>
   </welcome-file-list>

</web-app>
/***************************************/
webservices.xml:-
================
<?xml version="1.0" encoding="UTF-8"?>

<webservices xmlns="http://java.sun.com/xml/ns/j2ee";
  xmlns:impl="http://org.jboss.webservice/complexbean";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://www.ibm.com/webservices/xsd/j2ee_web_services
_1_1.xsd"
  version="1.1">

  <webservice-description>
    <webservice-description-
name>HelloOrderService</webservice-description-name>
    <wsdl-file>WEB-
INF/wsdl/HelloOrderService.wsdl</wsdl-file>
    <jaxrpc-mapping-file>WEB-INF/jaxrpc-
mapping.xml</jaxrpc-mapping-file>
    <port-component>
      <port-component-name>HelloOrder</port-
component-name>
      <wsdl-port>HelloOrderEndpointPort</wsdl-port>
      <service-endpoint-
interface>com.myapp.ekta.HelloOrderEndpoint</service-
endpoint-interface>
      <service-impl-bean>
        <servlet-link>HelloOrderService</servlet-link>
      </service-impl-bean>
    </port-component>
  </webservice-description>
</webservices>

/***************************************/
ws4ee-deployment.xml:-
======================
<deployment
  xmlns='http://xml.apache.org/axis/wsdd/'
  
xmlns:java='http://xml.apache.org/axis/wsdd/providers/ja
va'
  
xmlns:soap='http://schemas.xmlsoap.org/soap/encoding/'
  xmlns:xsi='http://www.w3.org/2000/10/XMLSchema-
instance'
  xmlns:xsd='http://www.w3.org/2001/XMLSchema'>

  <typeMapping
    qname='ns2:echoHello' 
xmlns:ns2='http://myapp.com/ekta/types'
    type='java:com.myapp.ekta.Hello'
    
serializer='org.apache.axis.encoding.ser.BeanSerializerFac
tory'
    
deserializer='org.apache.axis.encoding.ser.BeanDeserialize
rFactory'
    encodingStyle=''>
  </typeMapping>

  <typeMapping
    qname='ns2:echoHelloResponse' 
xmlns:ns2='http://myapp.com/ekta/types'
    type='java:com.myapp.ekta.Hello'
    
serializer='org.apache.axis.encoding.ser.BeanSerializerFac
tory'
    
deserializer='org.apache.axis.encoding.ser.BeanDeserialize
rFactory'
    encodingStyle=''>
  </typeMapping>

  <typeMapping
    qname='ns2:echoHelloArr' 
xmlns:ns2='http://myapp.com/ekta/types'
    type='java:com.myapp.ekta.HelloArray'
    
serializer='org.apache.axis.encoding.ser.BeanSerializerFac
tory'
    
deserializer='org.apache.axis.encoding.ser.BeanDeserialize
rFactory'
    encodingStyle=''>
   </typeMapping>
  
  <typeMapping
    qname='ns2:String_2' 
xmlns:ns2='http://myapp.com/ekta/types'
    type='java:java.lang.String'
    
serializer='org.apache.axis.encoding.ser.BeanSerializerFac
tory'
    
deserializer='org.apache.axis.encoding.ser.BeanDeserialize
rFactory'
    encodingStyle=''>
  </typeMapping>
  
  <typeMapping
    qname='ns2:echoHelloArrResponse' 
xmlns:ns2='http://myapp.com/ekta/types'
    type='java:com.myapp.ekta.HelloArray'
    
serializer='org.apache.axis.encoding.ser.BeanSerializerFac
tory'
    
deserializer='org.apache.axis.encoding.ser.BeanDeserialize
rFactory'
    encodingStyle=''>
  </typeMapping>

</deployment>
==========================================
==========================================
==

do i need to add somrthing extra in ws4ee-
deployment.xml for one more string argument?



----------------------------------------------------------------------

>Comment By: Ekta (ektak)
Date: 2004-12-23 14:06

Message:
Logged In: YES 
user_id=1162338

from this URL 
http://www.jboss.org/?module=bb&op=viewtopic&t=57625
     i found that this is a bug in Jboss 4.0.0 and it is 
recommended in the url to use Jboss 4.0.1 RC2 

So i used Jboss 4.0.1 RC2 but it is throwing same Exception 
on the new version of Jboss also.

----------------------------------------------------------------------

Comment By: Ekta (ektak)
Date: 2004-12-21 13:43

Message:
Logged In: YES 
user_id=1162338

I have added full helloworld application of mine as a zip.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=1089017&group_id=22866


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
JBoss-Development mailing list
JBoss-Development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to