Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA WS-SECURITY SOAP DHL跟踪服务_Java_Api_Soap_Axis2_Ws Security - Fatal编程技术网

JAVA WS-SECURITY SOAP DHL跟踪服务

JAVA WS-SECURITY SOAP DHL跟踪服务,java,api,soap,axis2,ws-security,Java,Api,Soap,Axis2,Ws Security,我成功地得到了联邦快递和UPS API的回复,但dhl的回复让我抓狂。 下面是我的代码,它正在生成以下请求 <?xml version="1.0" encoding="http://schemas.xmlsoap.org/soap/envelope/" standalone="no"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Bod

我成功地得到了联邦快递和UPS API的回复,但dhl的回复让我抓狂。 下面是我的代码,它正在生成以下请求

 <?xml version="1.0" encoding="http://schemas.xmlsoap.org/soap/envelope/" standalone="no"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns2:trackShipmentRequest xmlns:ns2="http://scxgxtt.phx-dc.dhl.com/glDHLExpressTrack/providers/services/trackShipment">
<trackingRequest>
<TrackingRequest xmlns="http://www.dhl.com">
<Request xmlns="">
<ServiceHeader>
<MessageTime>2011-09-01T20:40:36.334+02:00</MessageTime>
<MessageReference>123456789012345678901234567890</MessageReference>
</ServiceHeader>
</Request>
<LevelOfDetails xmlns="">ALL_CHECK_POINTS</LevelOfDetails>
</TrackingRequest>
</trackingRequest>
</ns2:trackShipmentRequest>
</soapenv:Body>
</soapenv:Envelope>

解决了的!!要添加axis2客户端上下文,因此在下面添加会得到服务器ConfigurationContext ConfigurationContext=ConfigurationContextFactory.createConfigurationContextFromFileSystem(“F:\\eclipse\\axis2-1.6.0\\repository\\modules\\rampart-1.6.0.mar”,“F:\\eclipse\\axis2-1.6.0\\conf\\axis2.xml”)的答复;GblDHLExpressTrackStub=新的GblDHLExpressTrackStub(配置上下文);ServiceClient sc=stub.\u getServiceClient();sc.engageModule(“rampart”);Options=sc.getOptions();options.setProperty(HTTPConstants.CHUNKED,false);sc.setOptions(选项);解决了的!!要添加axis2客户端上下文,因此在下面添加会得到服务器ConfigurationContext ConfigurationContext=ConfigurationContextFactory.createConfigurationContextFromFileSystem(“F:\\eclipse\\axis2-1.6.0\\repository\\modules\\rampart-1.6.0.mar”,“F:\\eclipse\\axis2-1.6.0\\conf\\axis2.xml”)的答复;GblDHLExpressTrackStub=新的GblDHLExpressTrackStub(配置上下文);ServiceClient sc=stub.\u getServiceClient();sc.engageModule(“rampart”);Options=sc.getOptions();options.setProperty(HTTPConstants.CHUNKED,false);sc.setOptions(选项);
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" soapenv:mustUnderstand="1">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="UsernameToken-12">
<wsse:Username>xxx</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">xxx</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header
public class abc {

/**
 * @param args

 * @param String ref 
 * @throws IOException 
 */
public static void main(String[] args) throws IOException {

    System.setProperty("javax.net.ssl.trustStore","F:\\eclipse\\terefere\\testkeystore");
    System.setProperty("javaxdhlrequest2.net.ssl.trustStorePassword","123456"); 

    GblDHLExpressTrackStub stub = new GblDHLExpressTrackStub();

    System.out.println("3");        
    System.out.println("5");

    TrackShipmentRequest trackShipmentRequest = new TrackShipmentRequest();

    TrackShipmentRequestE trackshipmentrequeste = new TrackShipmentRequestE();
    PubTrackingRequest pubtrackingequest = new PubTrackingRequest();
    System.out.println("6");
    TrackingRequest dhlrequest = new TrackingRequest();
    System.out.println("7");
    Request request = new Request();
    ServiceHeader header =new ServiceHeader();
    System.out.println("8");
    Calendar rightNow = Calendar.getInstance();
    AWBNumber awbnumber = new AWBNumber();

    awbnumber.setAWBNumber("2510305906");

    LevelOfDetails level = null;        
    level= LevelOfDetails.ALL_CHECK_POINTS;

    MessageReference message = new MessageReference();

    message.setMessageReference("123456789012345678901234567890");

                                header.setMessageReference(message);
                                header.setMessageTime(rightNow);
                        request.setServiceHeader(header);
                    //dhlrequest.setAWBNumber(awb);
                    dhlrequest.setLevelOfDetails(level);
                    dhlrequest.setRequest(request);

            pubtrackingequest.setTrackingRequest(dhlrequest);
        trackShipmentRequest.setTrackingRequest(pubtrackingequest);
    trackshipmentrequeste.setTrackShipmentRequest(trackShipmentRequest);

    GblDHLExpressTrackCallbackHandler callb = new GblDHLExpressTrackCallbackHandler() {
    };

    stub._getServiceClient().getOptions().setUserName("abc");
    stub._getServiceClient().getOptions().setPassword("abc");
        stub._getServiceClient().getOptions().setProperty(HTTPConstants.CHUNKED, false);

        stub._getServiceClient().engageModule("rampart");       
        stub.starttrackShipmentRequest(trackshipmentrequeste, callb);
        System.out.println("11,5");
        stub.trackShipmentRequest(trackshipmentrequeste);

        System.out.println("13");
    }   
}