Struggling with Interop

RichWallace

Member
Hi all,

First off, I'm a .NET developer and have just recently ventured into OW interop development as our experience with iWay and other third party providers have been horrible.

I've been all over the Interop Guide and I'm still not getting it, maybe because I've never done java before...that being said, please excuse my newbie-ness.

I've read on how to generate COM components and Java components using GenCOM and GenJAVA. I've created wrappers before in order to utilize and consume COM components in .NET, but for some reason, I am NOT understanding what I need to do to get myself down the correct path.

I have the three DLLs (JDEL.DLL, JDETHREAD.DLL and XMLINTEROP.DLL), but they are not seen as valid DLL's that can be imported into VB (VB 6 or .NET)...my goal is to consume the solution (servlet or COM compat wrapper) and pass an XML document to the solution. I need to send the XML to JDE for BSFN processing and receive a response from the solution.

I've seen several code snippets in here, but I still need to go back a step or two to get far enough to create the environment without the Fat Client so I can finally start writing my solution.

Can anybody assist? I know it's a lot to ask for this and any/all suggestions would be truly appreciated.

Rich
 
Dont use GenJava. This basically creates JNI calls, which is much more tightly coupled and requires a lareger client footprint, and I have heard is actually slower then XML.

Use XML Call Object (see the interop guide). It is a much better interface into the JDE API. We have used it, using Java, extensively with very good results. It doesn't take much setup (just some changes to jde.ini on the app server I believe) if you use Thinnet (as opposed to using MQSeries).
 
Thanks BOster...I'm looking all over the place about this but I'm still not understanding how to use the XMLCallObject correctly.

To utilize the XML Call Object love...can I do this using .NET, or is it simply a java solution that I have to learn to build and nothing else? I apologize for asking the obvious...crunchtime is here.
 
Hi,
Make sure to copy the required DLLs as it states in "Installing COM Connector on a Non-PeopleSoft EnterpriseOne Client Environment" in the connector guide. Pay attention to the ICU_DATA system variable. That threw me.

I attached a VB.Net sample.

Good Luck,
Mike
 

Attachments

  • 102851-jdeXmlSubmit.txt
    1.4 KB · Views: 389
Thank you very much! I'm receiving a connection failure (Code 14) so I'll have to work on that. I truly appreciate the example.
 
OK...still not getting it.

I've had my CNC guy make the change to the JDE.INI, I've followed the directions to the letter in the Interop Guide for setting up a NON-OW Client and registered my COM Connenctor/Server and the server icon is in the taskbar. I've updated my jdeinterop.ini and that's supposed to be it as far as I can see.

I pass in the login via .NET code just to test my connectivity:

<font class="small">Code:</font><hr /><pre>
Imports JDECOMCONNECTOR2Lib

Public Class Form1
Inherits System.Windows.Forms.Form

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim conn As New JDECOMCONNECTOR2Lib.Connector
Dim l As Long

Try
l = conn.Login("USER", "PASS", "DV811")
Catch ex As Exception
MsgBox(ex.Message)
End Try

End Sub

End Class</pre><hr />

I receive the following error in my Catch block:

"Error : Login validation failed on security server."

Back to basics...
Although the JDE.ini on my OW server has been updated...and my jdeinterop.ini has been updated on my client system...what am I missing??

Thanks again,
-Rich
 
Hi,
I thought you were using the jdeRequest xml submit method. This doesn't depend on the jdeinterop.ini.

However your .Net sample is calling the connector. Make sure there is a securityServer in the [INTEROP] section. For 8.10 you have to add the OCM section:
[OCM]
DSN=System - 810
DB User=user
DB Pwd=pwd
Object Owner=SY810.
Separator=.

I believe you need a ODBC def named "System - 810". Set the debugLevel=12 and look at the DebugFile for errors. Also run a SQL profiler against the system database to make sure the connector is trying to log in.

Good luck,
Mike
 
Here is my code for a .NET webservice that calls the xml interop dll. I had to do a full install of the JDE client to get the xmlinterop.dll to work though.
 

Attachments

  • 103139-JDEBFService.txt
    1.5 KB · Views: 412
Rich,

We feel your pain on iWay. What a long dark useless (expensive) tunnel that is.

Brett, thank you so much for the c# webservice code. It's a Godsend.

Tim
 
Back
Top