Any chance you can try this with 2.0.6 or 2.1? I fixed a couple header issues with -exsh true just before 2.1 and 2.0.6 were released.

Dan



On May 5, 2008, at 4:12 PM, olanga henry wrote:


Here is my client code to invoke the StrikeIron NFLTeam web service. I generated the client artifacts using the wsdl2java utility with -exsh flag set to true after referring to http://www.jroller.com/gmazza/date/20071001 (Sending implicit SOAP Headers using JAX-WS).

package client;

import java.util.*;
import javax.xml.ws.Holder;
import com.strikeiron.*;
import com.strikeiron.ws.*;
import org.apache.cxf.transports.http.configuration.*;
import org.apache.cxf.transport.http.*;
import org.apache.cxf.frontend.ClientProxy;
import org.apache.cxf.endpoint.Client;

public class WSClient {

   private static void setProxyInfo(Object port)
   {
                Client client = ClientProxy.getClient( port );
HTTPConduit httpConduit = (HTTPConduit) client.getConduit();
               HTTPClientPolicy policy = new HTTPClientPolicy();
               policy.setProxyServer( "proxy.domain.com" );
               policy.setProxyServerPort( 8080 );
               httpConduit.setClient( policy );
   }

   private static LicenseInfo getLicenseInfo()
   {
        LicenseInfo licenseInfo = new LicenseInfo();
        RegisteredUser registeredUser = new RegisteredUser();
        registeredUser.setUserID("[EMAIL PROTECTED]");
        registeredUser.setPassword("mypwd");
        licenseInfo.setRegisteredUser( registeredUser );
        return licenseInfo;
   }

   private static javax.xml.ws.Holder getSubscriptionInfo()
   {
        SubscriptionInfo sInfo = new SubscriptionInfo();
        javax.xml.ws.Holder holder = new javax.xml.ws.Holder( sInfo );

        return holder;  
   }

   public static void main (String[] args) {
       try {
           if (args.length != 1) {
               System.out.println("Usage: WSClient ");
               System.exit(0);
           }

           SDPNFLTeams sdpService = new SDPNFLTeams();
           SDPNFLTeamsSoap endpt = sdpService.getSDPNFLTeamsSoap();
            setProxyInfo( endpt );      

com.strikeiron.NFLTeamOutput x = endpt .getTeamInfoByCity ( "INDIANAPOLLIS",getLicenseInfo(),getSubscriptionInfo() );
            List teamInfo = x.getServiceResult().getTeams().getNFLTeamInfo();
            for(NFLTeamInfo tix: teamInfo) {
                System.out.println( tix.getNickname()+" "+tix.getDivision() );
            }
        

       } catch (Exception e) {
            e.printStackTrace();
           System.out.println("Exception: " +  e.getMessage());
       }
   }
}

= = = = = = = = = = = ====================================================================== Everthing seems fine till the execution point when I get an exception I cannot understand:

    [java] javax.xml.ws.soap.SOAPFaultException: Index: 3, Size: 3
[java] at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java: 175)
    [java]     at $Proxy28.getTeamInfoByCity(Unknown Source)
    [java]     at client.WSClient.main(WSClient.java:60)
[java] Caused by: java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
    [java]     at java.util.ArrayList.RangeCheck(ArrayList.java:546)
    [java]     at java.util.ArrayList.get(ArrayList.java:321)
[java] at org .apache.cxf.message.MessageContentsList.get(MessageContentsList.java: 79) [java] at org .apache .cxf .jaxws .interceptors .HolderInInterceptor.handleMessage(HolderInInterceptor.java:64) [java] at org .apache .cxf .phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java: 208) [java] at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:429) [java] at org.apache.cxf.transport.http.HTTPConduit $WrappedOutputStream.handleResponse(HTTPConduit.java:1955) [java] at org.apache.cxf.transport.http.HTTPConduit $WrappedOutputStream.close(HTTPConduit.java:1791) [java] at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java: 66) [java] at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:575) [java] at org.apache.cxf.interceptor.MessageSenderInterceptor $ MessageSenderEndingInterceptor .handleMessage(MessageSenderInterceptor.java:62) [java] at org .apache .cxf .phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java: 208) [java] at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:276) [java] at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:222) [java] at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73) [java] at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java: 135)
    [java]     ... 2 more
    [java] Exception: Index: 3, Size: 3
= = = = = = = = = = = ======================================================================

Thanks,

_________________________________________________________________
Windows Live SkyDrive lets you share files with faraway friends.
http://www.windowslive.com/skydrive/overview.html?ocid=TXT_TAGLM_WL_Refresh_skydrive_052008

Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog



Reply via email to