Advertisement
Guest User

Untitled

a guest
Aug 11th, 2017
643
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.05 KB | None | 0 0
  1. public class PostDOOCreateOrder {
  2. ObjectFactory objFact = new ObjectFactory();
  3. OrderImportRequest orderImportRequest = objFact.createOrderImportRequest();
  4. List < OrderImportResponse > orderImportResponse;
  5.  
  6. public void setOrderImportResponse(List < OrderImportResponse > orderImportResponse) {
  7. this.orderImportResponse = orderImportResponse;
  8. for (int i = 0; i < orderImportResponse.size(); i++) {
  9. System.out.println("" + orderImportResponse.get(i).getSourceTransactionSystem().toString());
  10. System.out.println("" + orderImportResponse.get(i).getSourceTransactionIdentifier().toString());
  11. System.out.println("" + orderImportResponse.get(i).getSourceTransactionNumber().toString());
  12. System.out.println("" + orderImportResponse.get(i).getOrderNumber().toString());
  13. System.out.println("" + orderImportResponse.get(i).getMessageName().toString());
  14. System.out.println("" + orderImportResponse.get(i).getMessageText().toString());
  15. }
  16. }
  17.  
  18. public List < OrderImportResponse > getOrderImportResponse() {
  19. return orderImportResponse;
  20. }
  21.  
  22. public PostDOOCreateOrder() {
  23. super();
  24.  
  25. Order order = objFact.createOrder();
  26. GregorianCalendar c = new GregorianCalendar();
  27. c.set(2017, 07, 10);
  28.  
  29. order.setSourceTransactionSystem(objFact.createOrderSourceTransactionSystem("SOURCE"));
  30. order.setSourceTransactionIdentifier(objFact.createOrderSourceTransactionIdentifier("5329096850"));
  31. order.setSourceTransactionNumber(objFact.createOrderSourceTransactionNumber("1007"));
  32. order.setBuyingPartyName(objFact.createOrderBuyingPartyName("xxxx"));
  33. order.setTransactionalCurrencyCode(objFact.createOrderTransactionalCurrencyCode("USD"));
  34. // StringToXMLGregorianCalendar (int date,int month,int year,int hour,int min,int sec)
  35. order.setTransactionOn(objFact.createOrderTransactionOn(StringToXMLGregorianCalendar(02, 8, 2017, 19, 15, 8)));
  36. order.setRequestingBusinessUnitName(objFact.createOrderRequestingBusinessUnitName("US2 Business Unit"));
  37. order.setTransactionTypeCode(objFact.createOrderTransactionTypeCode("SOURCE"));
  38. order.setOrigSystemDocumentReference(objFact.createOrderOrigSystemDocumentReference("5329096850"));
  39. order.setBillToCustomerName(objFact.createOrderBillToCustomerName("xxxxx"));
  40. order.setBillToAddress1(objFact.createOrderBillToAddress1("292 BROKAW RD"));
  41. order.setBillToCity(objFact.createOrderBillToCity("CA"));
  42. order.setBillToPostalCode(objFact.createOrderBillToPostalCode("95050"));
  43. order.setBillToProvince(objFact.createOrderBillToProvince("California"));
  44. order.setBillToCountry(objFact.createOrderBillToCountry("United States"));
  45. order.setBillToPartyPersonEmail(objFact.createOrderBillToPartyPersonEmail("abc@xyz.com"));
  46. //Lines
  47. OrderLine orderLine = objFact.createOrderLine();
  48. orderLine.setSourceTransactionLineIdentifier(objFact.createOrderLineSourceTransactionLineIdentifier("12548"));
  49. orderLine.setSourceTransactionLineNumber(objFact.createOrderLineSourceTransactionLineNumber("1"));
  50. orderLine.setProductNumber(objFact.createOrderLineProductNumber("1"));
  51. ///Measurement Type Creation
  52. MeasureType unitQuanitiy = new MeasureType();
  53. unitQuanitiy.setUnitCode("Ea");
  54. unitQuanitiy.setValue(new BigDecimal("3"));
  55. objFact.createOrderLineOrderedQuantity(unitQuanitiy);
  56. orderLine.setOrderedUOMCode(objFact.createOrderLineOrderedUOMCode("Ea"));
  57. order.getLine().add(orderLine);
  58. //OrderImportRequest
  59.  
  60. orderImportRequest.getOrder().add(order);
  61. JAXBElement < Order > Orderxml = objFact.createOrder(order);
  62.  
  63.  
  64. System.out.println("JAXBElement Print : " + toXml(Orderxml));
  65.  
  66. }
  67.  
  68. public void setObjFact(ObjectFactory objFact) {
  69. this.objFact = objFact;
  70. }
  71.  
  72. public ObjectFactory getObjFact() {
  73. return objFact;
  74. }
  75.  
  76. public void setOrderImportRequest(OrderImportRequest orderImportRequest) {
  77. this.orderImportRequest = orderImportRequest;
  78. }
  79.  
  80. public OrderImportRequest getOrderImportRequest() {
  81. return orderImportRequest;
  82. }
  83.  
  84. public String toXml(JAXBElement element) {
  85. try {
  86. JAXBContext jc = JAXBContext.newInstance(element.getValue().getClass());
  87. Marshaller marshaller = jc.createMarshaller();
  88. marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
  89.  
  90. ByteArrayOutputStream baos = new ByteArrayOutputStream();
  91. marshaller.marshal(element, baos);
  92. return baos.toString();
  93. } catch (Exception e) {
  94. e.printStackTrace();
  95. }
  96. return "";
  97. }
  98. public JAXBElement < String > toJAXBElement(String Name, String Value) {
  99. JAXBElement < String > project = new JAXBElement < > (new QName("", Name), String.class, null, Value);
  100. return project;
  101. }
  102. public XMLGregorianCalendar StringToXMLGregorianCalendar(int date, int month, int year, int hour, int min, int sec) {
  103.  
  104. XMLGregorianCalendar gDateFormatted1;
  105. try {
  106. gDateFormatted1 = DatatypeFactory.newInstance().newXMLGregorianCalendar(year, month, date, hour, min, sec, DatatypeConstants.FIELD_UNDEFINED, DatatypeConstants.FIELD_UNDEFINED);
  107. return gDateFormatted1;
  108. } catch (DatatypeConfigurationException e) {
  109. e.printStackTrace();
  110. }
  111. return null;
  112. }
  113. }
  114.  
  115. public class OrderImportServiceSoapHttpPortClient {
  116. private static final AddressingVersion WS_ADDR_VER = AddressingVersion.W3C;
  117.  
  118. public static void main(String[] args) {
  119. OrderImportService_Service orderImportService_Service = new OrderImportService_Service();
  120. OrderImportService orderImportService = orderImportService_Service.getOrderImportServiceSoapHttpPort();
  121.  
  122. // Configure credential providers
  123. Map < String, Object > requestContext = ((BindingProvider) orderImportService).getRequestContext();
  124.  
  125. try {
  126. setPortCredentialProviderList(requestContext);
  127. } catch (Exception ex) {
  128. ex.printStackTrace();
  129. }
  130.  
  131. // Get the request context to set the outgoing addressing properties
  132. WSBindingProvider wsbp = (WSBindingProvider) orderImportService;
  133. WSEndpointReference replyTo =
  134. new WSEndpointReference("https://xxxxxxxxx/fomImportOrdersService/OrderImportService", WS_ADDR_VER);
  135. String uuid = "uuid:" + UUID.randomUUID();
  136.  
  137. wsbp.setOutboundHeaders(new StringHeader(WS_ADDR_VER.messageIDTag, uuid),
  138. replyTo.createHeader(WS_ADDR_VER.replyToTag));
  139.  
  140. // Add your code to call the desired methods.
  141. PostDOOCreateOrder postOrder = new PostDOOCreateOrder();
  142. try {
  143. postOrder.setOrderImportResponse(orderImportService.createOrders(postOrder.getOrderImportRequest()));
  144. } catch (Exception e) {
  145. e.printStackTrace();
  146. }
  147.  
  148. }
  149.  
  150. @Generated("Oracle JDeveloper")
  151. public static void setPortCredentialProviderList(Map < String, Object > requestContext) throws Exception {
  152. // Values used from credential preference: ava.clark
  153. String username = "xxxxxx";
  154. String password = "yyyyyy";
  155. String clientKeyStore = "";
  156. String clientKeyStorePassword = "";
  157. String clientKeyAlias = "";
  158. String clientKeyPassword = "";
  159. String serverKeyStore = "";
  160. String serverKeyStorePassword = "";
  161. String serverKeyAlias = "";
  162. List < CredentialProvider > credList = new ArrayList < CredentialProvider > ();
  163.  
  164. // Add the necessary credential providers to the list
  165.  
  166. credList.add(getUNTCredentialProvider(username, password));
  167.  
  168. // Code commented out due to empty server keystore value found in the credential.
  169. // credList.add(getBSTCredentialProvider(clientKeyStore, clientKeyStorePassword, clientKeyAlias, clientKeyPassword, serverKeyStore, serverKeyStorePassword, serverKeyAlias, requestContext));
  170.  
  171. credList.add(getSAMLTrustCredentialProvider());
  172.  
  173. requestContext.put(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credList);
  174. }
  175.  
  176. @Generated("Oracle JDeveloper")
  177. public static CredentialProvider getSAMLTrustCredentialProvider() {
  178. return new SAMLTrustCredentialProvider();
  179. }
  180.  
  181. @Generated("Oracle JDeveloper")
  182. public static CredentialProvider getUNTCredentialProvider(String username, String password) {
  183. return new ClientUNTCredentialProvider(username.getBytes(), password.getBytes());
  184. }
  185.  
  186. @Generated("Oracle JDeveloper")
  187. public static CredentialProvider getBSTCredentialProvider(String clientKeyStore, String clientKeyStorePwd,
  188. String clientKeyAlias, String clientKeyPwd,
  189. String serverKeyStore, String serverKeyStorePwd,
  190. String serverKeyAlias,
  191. Map < String, Object > requestContext) throws Exception {
  192. List serverCertList = CertUtils.getCertificate(serverKeyStore, serverKeyStorePwd, serverKeyAlias, "JKS");
  193.  
  194. List clientCertList = CertUtils.getCertificate(clientKeyStore, clientKeyStorePwd, clientKeyAlias, "JKS");
  195.  
  196. final X509Certificate serverCert =
  197. (serverCertList != null && serverCertList.size() > 0) ? (X509Certificate) serverCertList.get(0) : null;
  198. final X509Certificate clientCert =
  199. (clientCertList != null && clientCertList.size() > 0) ? (X509Certificate) clientCertList.get(0) : null;
  200.  
  201. requestContext.put(WSSecurityContext.TRUST_MANAGER, new TrustManager() {
  202. public boolean certificateCallback(X509Certificate[] chain, int validateErr) {
  203. boolean result =
  204. (chain != null && chain.length > 0) && (chain[0].equals(serverCert) || chain[0].equals(clientCert));
  205. return result;
  206. }
  207. });
  208.  
  209. return new ClientBSTCredentialProvider(clientKeyStore, clientKeyStorePwd, clientKeyAlias, clientKeyPwd, "JKS",
  210. serverCert);
  211. }
  212. }
  213.  
  214. INFO: WSM - 02319 Connected successfully with OWSM Policy Manager Application.
  215. INFO: Policy subject is not registered.
  216. INFO: EffectivePolicySetFeature not on the binding, will look up policy set for;
  217. ResourcePattern[absolutePortableExpression = ///UNKNOWN|#MODULE|WS-Client({http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/}OrderImportService#OrderImportServiceSoapHttpPort,wls)]
  218. INFO: EffectivePolicySetFeature = oracle.j2ee.ws.common.wsm.EffectivePolicySetFeature @3db65c0d INFO: WSM Security is not enabled
  219. for Policy Subject: ResourcePattern[absolutePortableExpression = ///UNKNOWN|#MODULE|WS-Client({http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/}OrderImportService#OrderImportServiceSoapHttpPort,wls)]
  220. JAXBElement Print: << ? xml version = "1.0"
  221. encoding = "UTF-8" ? >
  222. <
  223. order xmlns = "http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/"
  224. xmlns : ns1 = "http://xmlns.oracle.com/apps/scm/doo/processOrder/model/" >
  225. <
  226. SourceTransactionIdentifier > 5329096850 < /SourceTransactionIdentifier> <
  227. SourceTransactionSystem > SOURCE < /SourceTransactionSystem> <
  228. SourceTransactionNumber > 1007 < /SourceTransactionNumber> <
  229. BuyingPartyName > xxxxxxxx < /BuyingPartyName> <
  230. TransactionalCurrencyCode > USD < /TransactionalCurrencyCode> <
  231. TransactionOn > 2017 - 08 - 02 T19 : 15: 08 < /TransactionOn> <
  232. RequestingBusinessUnitName > US2 Business Unit < /RequestingBusinessUnitName> <
  233. TransactionTypeCode > SOURCE < /TransactionTypeCode> <
  234. OrigSystemDocumentReference > 5329096850 < /OrigSystemDocumentReference> <
  235. BillToCustomerName > xxxxxxxxxx < /BillToCustomerName> <
  236. BillToAddress1 > 292 BROKAW RD < /BillToAddress1> <
  237. BillToCity > CA < /BillToCity> <
  238. BillToPostalCode > 95050 < /BillToPostalCode> <
  239. BillToProvince > California < /BillToProvince> <
  240. BillToCountry > United States < /BillToCountry> <
  241. BillToPartyPersonEmail > abc @xyz.com < /BillToPartyPersonEmail> <
  242. Line >
  243. <
  244. SourceTransactionLineIdentifier > 12548 < /SourceTransactionLineIdentifier> <
  245. SourceTransactionLineNumber > 1 < /SourceTransactionLineNumber> <
  246. ProductNumber > 1 < /ProductNumber> <
  247. OrderedUOMCode > Ea < /OrderedUOMCode> <
  248. /Line> <
  249. /order>
  250.  
  251. SEVERE: Error
  252. while invoking endpoint https: //xxxxxxxxxx/fomImportOrdersService/OrderImportService from client; ServiceName: {http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/}OrderImportService ; PortName: {http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/}OrderImportServiceSoapHttpPort ; Client side features: [weblogic.jws.jaxws.client.ClientIdentityFeature]; Client side policies:
  253. com.sun.xml.ws.client.ClientTransportException: HTTP transport error: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching xxxxxxx.oracledemos.com found at com.sun.xml.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java: 131) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java: 223) at weblogic.wsee.jaxws.transport.http.client.WLSHttpTransportPipe.process(WLSHttpTransportPipe.java: 30) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java: 145) at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java: 139) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java: 1136) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java: 1050) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java: 1019) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java: 877) at com.sun.xml.ws.client.Stub.process(Stub.java: 463) at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java: 191) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java: 108) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java: 92) at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java: 161) at com.sun.proxy.$Proxy51.createOrders(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 43) at java.lang.reflect.Method.invoke(Method.java: 498) at weblogic.wsee.jaxws.spi.ClientInstanceInvocationHandler.invoke(ClientInstanceInvocationHandler.java: 147) at com.sun.proxy.$Proxy52.createOrders(Unknown Source) at com.oracle.xmlns.apps.scm.fom.importorders.orderimportservice.OrderImportServiceSoapHttpPortClient.main(OrderImportServiceSoapHttpPortClient.java: 62) Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching rws2 - fap0438 - scm.oracledemos.com found at sun.security.ssl.Alerts.getSSLException(Alerts.java: 192) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java: 1949) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java: 302) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java: 296) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java: 1514) at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java: 216) at sun.security.ssl.Handshaker.processLoop(Handshaker.java: 1026) at sun.security.ssl.Handshaker.process_record(Handshaker.java: 961) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 1062) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java: 1375) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java: 1403) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java: 1387) at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java: 559) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java: 185) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java: 1316) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java: 1291) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java: 250) at com.sun.xml.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java: 119)
  254. ...21 more Caused by: java.security.cert.CertificateException: No name matching xxxx.oracledemos.com found at sun.security.util.HostnameChecker.matchDNS(HostnameChecker.java: 221) at sun.security.util.HostnameChecker.match(HostnameChecker.java: 95) at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java: 455) at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java: 436) at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java: 200) at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java: 124) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java: 1496)
  255. ...34 more Process exited with exit code 0.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement