Baanboard.com

Baanboard.com (http://www.baanboard.com/baanboard/index.php)
-   Open World, Portal & Decision Manager (http://www.baanboard.com/baanboard/forumdisplay.php?f=15)
-   -   Current Middleware options (http://www.baanboard.com/baanboard/showthread.php?t=70059)

lfhaddix 24th May 2017 13:59

Current Middleware options
 
When we installed Baan we chose wbi adapters and IBM Websphere MQ Series. As MQ Series is no longer supported by IBM, we are looking to use another method to transfer data into LN. How do I find the options that are available? I would like to focus on web services if that is possible.

sasikanth 29th June 2017 14:01

Hi,

If you don't have ION in your Environment, indeed Web Services is the best possible way to Synchronize the Data from any Third Party Application to Infor ERP LN.

Connect with me if you would like to know more about how to develop/deploy/use Web Services on LN Side. I will be happy to help you out!

bhushanchanda 29th June 2017 14:40

You can go for C4WS for integration purpose using Webservices. C4WS related guides are available on InforXtreme for downloading. You can get them and check if you can use them to build your requirement.

Daniel66 24th July 2017 20:29

WebServices
 
Hi,

if you are using WebServices, you have to be careful with the Transaction handling. The WebServices has its own Transaction handling (commitments). We use them al lot and have sometimes Problems with Error 201.

If someone knows this Problems and has a Workaround, please contact me. You are Welcome!


Daniel

lfhaddix 13th September 2017 13:42

Need help with C4WS Client
 
1 Attachment(s)
Could someone post a working java client for C4WS web service?

I have the below wsdl and have generated the java classes using 1.8 java wsimport. I cannot figure out how to put values into the 3 attributes (order, login, user). It is using the complex type and I cannot find a jax-ws example using complex types.

The wsdl is attached as a .txt file.

Thank you for any help you can give me.

Linda

lfhaddix 13th September 2017 20:53

I have gotten as far as sending the AddScan successfully but now I am trying to add Error handling. jax-ws shows that it is returning a AddScanResponseType but when I look at the actual logs, it is returning a Result. How do I get access to the <Result> object so that I can check messages?

<code>
public String addScan(String poNumber, String login, String userId) {
StringBuffer responseMsg = new StringBuffer("");
System.out.println("AddScan order:"+poNumber +" login:"+login +" user: "+userId);
List<InformationMessage> responseMessages = null;
String message = "Scan not attempted";
try {
String serverName = BarcodeUtil.getLN_Server(BarcodeConstants.COMPANY_NUMBER); // 09-07-17
String c4wsServerName = BarcodeUtil.getC4WS_Server( ); // 09-07-17
String url = String.format(BarcodeConstants.C4WS_FORMAT, c4wsServerName, serverName); // 09-07-17
System.out.println(url);
URL newWsdlLocation = new URL(url);
AssemblyLineScansService service = new AssemblyLineScansService(newWsdlLocation);
AssemblyLineScans serviceReq = service.getAssemblyLineScansSoapPort();
ObjectFactory factory = new ObjectFactory();
AddScanRequestType params = factory.createAddScanRequestType();
ControlArea controlArea = factory.createAddScanRequestTypeControlArea();
params.setControlArea(controlArea);
DataArea dataArea = factory.createAddScanRequestTypeDataArea();
infor.erpln.c4ws.web.wsdl.client.AddScanRequestType.DataArea.AssemblyLineScans scan = new infor.erpln.c4ws.web.wsdl.client.AddScanRequestType.DataArea.AssemblyLineScans( );
scan.setOrder(poNumber);
scan.setLogin(login);
scan.setUser(userId);
dataArea.getAssemblyLineScans().add(scan);
params.setDataArea(dataArea);
AddScanResponseType response = serviceReq.addScan( params );
if (response == null) {
System.out.println("response is null" );
} else {
if ((response.getInformationArea() == null) || (response.getInformationArea().getMessage() == null)) {
System.out.println("InformationArea or Message is null" );
message = "";
} else {
responseMessages = response.getInformationArea().getMessage();
InformationMessage tempMsg = null;
for (int m = 0; m < responseMessages.size(); m++) {
tempMsg = (InformationMessage)responseMessages.get(m);
message = tempMsg.getMessageText();
System.out.println(tempMsg.getMessageText());
break;
}
}

}
} catch (Exception ex) {
message = ex.getMessage();
ex.printStackTrace();
}
return message;
}


</code>

<code>
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (270): JCA Daemon starts -trace
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (273): Bshell Name='ftvbaant2.bb.local', BSE Release='6.2', Bshell pid=13435030, Process pid=1
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (273): BSE directory='/new_test_a01/app/bse'
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2411): Enter: handleInitDsEvent()
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2659): Enter: handleInitRequest(clientProtocolVersion: 3, company: 150)
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2672): switch.to.company() returned: 1
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2686): Leave: handleInitRequest() return value: 1, serverProtocolVersion: 3, productname: ERP LN, productversion: 8.4, username: lfhaddix
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2432): Leave: handleInitDsEvent()
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2447): Enter: handleBdeOpenDsEvent()
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2470): Leave: handleBdeOpenDsEvent()
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (105): BDE Manager starts
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (108): Bshell Name='ftvbaant2.bb.local', BSE Release='6.2', Bshell pid=13435030, Process pid=3
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (108): BSE directory='/new_test_a01/app/bse'
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (342): Enter: handleDsBdeRequest()
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (469): handleBdeRequest for: AssemblyLineScans, invoke: AddScan, request:
[14:12:46]lfhaddix: ottstpbdeman (3) {150}, pttstpbdeman0 (488) :
<?xml version="1.0"?>
<AddScanRequest>
<ControlArea/>
<DataArea>
<AssemblyLineScans>
<order>P2200000FC1071212</order>
<login>fc1op080</login>
<user>P2200000001704</user>
</AssemblyLineScans>
</DataArea>
</AddScanRequest>
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (509): handleBdeRequest returns: -12
[14:12:46]lfhaddix: ottstpbdeman (3) {150}, pttstpbdeman0 (522) :
<?xml version="1.0"?>
<Result>
<messageCode>tlbcts0074</messageCode>
<messageType>Error</messageType>
<messageText>Request validation; Attr. &apos;order&apos;, Value &apos;P2200000FC1071212&apos;: the value is too long.</messageText>
<messageSource>Application</messageSource>
</Result>

[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (365): Leave: handleDsBdeRequest()
[14:12:46]lfhaddix: ottstpbdeman (3), pttstpbdeman0 (747): handleCloseRequest()
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (2624): Enter: handleConnectorClose()
[14:12:46]lfhaddix: ottstpjcadaemon (1), pttstpjcadaemon0 (1005): doExit JCA Daemon

</code>


All times are GMT +2. The time now is 09:51.


vB.Sponsors
©2001-2017 - Baanboard.com - Baanforums.com