سؤال

ولقد حصلت على التعليمات البرمجية التالية التي أحاول أن تستخدم للوصول إلى خدمة ويب عبر HTTPS باستخدام أباتشي CXF. ولكن كلما يذهب رسالتي، وأنا الحصول على أي شيء يعود حتى العصر قانون بلدي خارج. يمكن للشخص أن قانون بلدي لأكثر من مرة واحدة واسمحوا لي أن أعرف إذا أنا أفعل أي شيء خطأ. لقد حاولت الوصول إلى الخدمة عبر SoapUI وهذا شيء طيب، لذلك يجب أن يكون شيئا في قانون بلدي CXF لكنني لا أعرف ما!

وشكرا على اي مساعدة

DepositImplService ss = new DepositImplService(WSDL_LOCATION,
    SERVICE_NAME);
PortType port = ss.getPortTypePort();

Client client = ClientProxy.getClient(port);

HTTPConduit conduit = (HTTPConduit) client.getConduit();
HTTPClientPolicy httpClientPolicy = conduit.getClient();
httpClientPolicy.setConnectionTimeout(30000);
httpClientPolicy.setReceiveTimeout(30000);
conduit.setClient(httpClientPolicy);

AuthorizationPolicy authPolicy = new AuthorizationPolicy();
authPolicy.setUserName("foo");
authPolicy.setPassword("bar");
conduit.setAuthorization(authPolicy);

TLSClientParameters parameters = new TLSClientParameters();
parameters.setSecureSocketProtocol("SSL");
conduit.setTlsClientParameters(parameters);

client.getInInterceptors().add(new LoggingInInterceptor());
client.getOutInterceptors().add(new LoggingOutInterceptor());

UploadRequestT doc = new UploadRequestT();
BufferedReader reader = new BufferedReader(new FileReader(new File(
    "C:\\rawmessage.txt")));
String documentStr = "";
String currLine = "";
while ((currLine = reader.readLine()) != null) {
  documentStr += currLine;
}

doc.setDoc(documentStr);
doc.setOwner("43");
port.upload(doc);
هل كانت مفيدة؟

المحلول

ما هو وقت استجابة من SoapUI؟

هل تشغيل هذا من خلال رصد ليرى أنه يرسل الى المكان الصحيح؟

قانون بلدي CXF يبدو مثل هذا:

      PService phsService = new PService(url, SERVICE_NAME);
      P p = phsService.getPHSPort();
      LOG.info("Calling Web Service : getHs");

      StringArray ar = p.getHs();

      for (String hn: ar.getItem()) {
         LOG.info("Calling : getHName : " + hn);
         Dto nDto = p. getHName (hn);

         // process the result   

      }

وتستغرق هذه الخدمة حوالي 90secs للعودة ويدير غرامة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top