none
JD Edwards Enterprise One Adapter and BTS 2009: Problems with RuntimeAgent.exe RRS feed

  • Question

  • Hi there - I'm having the same problem that the person in this post was having:

    http://social.msdn.microsoft.com/Forums/en-US/biztalkr2adapters/thread/e294f101-07c1-4710-b53e-d39b02285533

    Namely: I get the error "Error transmitting message: No connection could be made because the target machine actively refused it 127.0.0.1:15000"

    This error seems to happen when the adapter attempts to communicate with the "runtimeagent.exe" process.

    That question above was answered by suggesting that the person in question contact Microsoft support.

    However, I'm evaluating the trial edition of BTS 2009 for a client, so we don't have the ability to contact support (unless we pay for it) from what I can see on the Microsoft Support Website i.e. when I choose United Kingdom as the country, I have to choose a support plan or pay for an incident before I'm given the phone number to call, unless I've missed something.

    I've logged a problem call using the connect website (at https://connect.microsoft.com/BizTalk/feedback/details/575407/jde-enterpriseone-adapter-causes-runtime-error).

    I can't log a support call as we have to pay for that (is that right? you have to pay to report a bug? or am I missing something here?!).

    It's causing issues for us as I can't recommend that the client use BizTalk 2009 until this issue is fixed.

    In any case, the issue only happens if you:

    1) Submit a message via the adapter

    2) Wait for 2 mins (which is w3hen the runtimeagent.exe)

    3) Attempt to submit another message

    Subsequent messages seem to process correctly.

    The error only seems to happen when the runtimeagent.exe process attempts to shut itself down after a period of inactivity.

     

    So what do Microsoft Support recommend I do about this problem?

    UPDATE:

    Interestingly, I get a related error the first time I use BizTalk after having left it a while (e.g. after leaving the server overnight):

    ---------------------------

    Event Type:    Error
    Event Source:    Microsoft Biztalk Adapters for Enterprise Applications
    Event Category:    None
    Event ID:    0
    Date:        20/07/2010
    Time:        15:46:52
    User:        N/A
    Computer:    xxx
    Description:
    Runtime Error : An existing connection was forcibly closed by the remote host

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
    ---------------------------

    If I resend the message, it gets through ok, but if I leave it for two minutes, I get the original error.

    I also occasionally get this error:

    (I have seen this error a few times, but not regularly)

    -----------------------------------

    Event Type:    Error
    Event Source:    Microsoft Biztalk Adapters for Enterprise Applications
    Event Category:    None
    Event ID:    0
    Date:        19/07/2010
    Time:        10:19:51
    User:        N/A
    Computer:    xxx
    Description:
    Runtime Error : Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    -----------------------------------

    Cheers,

    Dourn.

    • Edited by Dourn Tuesday, July 20, 2010 3:03 PM Update to error messages
    Monday, July 19, 2010 7:51 AM

All replies

  • Hi Dourn,

    I have and continue to experience this in a one particular BizTalk Server environment (BTS 2009, Windows Server 2008 SP2), that has been recently setup, working with the JDE OneWorld adapter on 7.3.3.3. I suspect there will be much commonality between the Enterprise One and OneWorld adapter implementations. However, in other environments the adapter has proven to be quite stable. There seems to be a correlation when JDE doesn't respond (TCP/IP) and the protected memory error...

     

    Event Type:	Error
    Event Source:	BizTalk Server 2009
    Event Category:	(1)
    Event ID:	5754
    Date:		22/07/2010
    Time:		9:22:34 AM
    User:		N/A
    Computer:	xxx
    Description:
     Error details: Error transmitting message: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

     

     

    It seems the general architecture of the JDE adapter (e.g. RuntimeAgent executable, Java runtime) applies to other adapter that fall in the "BizTalk Adapters for Enterprise Applications" suite. A quick search shows that this behavior has also occured for the Oracle ODBC adapter, etc.

    What version of the JDK are you running on?

    Have you tried tuning the Java VM at all? For example, I have applied the following JDE adapter related recommendation to all our 1.4.2_19 JVM's.

    Follow these steps, and then quit Registry Editor:

     

    1.	Click Start , click Run , type regedit , and then click OK . 
    2.	Locate and then click the following key in the registry: 
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\BizTalkAdapters\Config\Global\Adapters
    3.	On the Edit menu, point to New , and then click DWORD . 
    4.	Type JVMMemory , and then press ENTER. 
    5.	On the Edit menu, click Modify . 
    6.	Change the base to Decimal.
    7.	Type 1000 , and then click OK.
    Note The value for JVMMemory registry key needs to be tuned after the Java VM is initialized successfully but that can only be done through testing on your end . The minimum value for JVMMemory is: 1, the maximum value is: 3072.

     

     

    Regards

    Ben

    Thursday, July 22, 2010 12:21 AM
  • Hi Ben, thanks for your reply.

    We're on JDK v1.6.0_21.

    I did try that registry Change, although that has to be done hand-in-hand with the hotfix here: http://support.microsoft.com/kb/974617/en-gb

    (i.e. the setting is ignored unless you have that hotfix installed).

    I've tried both with and without the hotfix installed, and have tried various values for the JVMMemory key - it doesn't seem to affect the problem at all.

    I know what you mean about the "memory is corrupt" error being related to TCP/IP problems talking to JDE: if there's any problem with the configuration (for example) then we get 5 error events logged, the first with the actual error, and the last (usually the XLANG/s one as we're going via an orchestration) has this "memory is corrupt" error, which is generally unrelated to the actual cause of the error.

    However, sometimes I've noticed the "memory is corrupt" as the sole error, which is what made it unusual.

    What I think we'll do is test on a separate machine and see if the same thing happens - although we're virtualised and all machines have the same base build, so I'm not sure that will help!

    One thing I will try is downgrading the version of the JDK. It does say "v1.4.2 and later" for the system requirements, but I'll try with v1.4.2 and see if it makes any difference.

    It's tricky as we're evaluating BizTalk for a client, they are also evaluating Oracle and IBM integration toolsets, so it's a bit embarrassing to be having this adapter problem, and it's not making BizTalk look good!

    Thanks for your reply.

    Thursday, July 22, 2010 6:57 AM
  • OK, so I tried using various JDK versions on the BTS server.

    I tried v1.4.2_19 first. No luck: the JDE JAR Files (supplied with Tools Release 8.97) seem to require 1.5 or later.

    (this was the error I got using v1.4.2_19: E-JNI0004: A Java exception occurred:
    java.lang.NoClassDefFoundError: javax/management/NotificationBroadcasterSupport)

    So then I tried 1.5.0_21.

    Now where I previously got the "memory is corrupt" error, now I get an actual crash of the runtimeagent.exe, in the module "BTCore.dll":

    ------------------------------

    Event Type:    Error
    Event Source:    Application Error
    Event Category:    (100)
    Event ID:    1000
    Date:        22/07/2010
    Time:        11:30:14
    User:        N/A
    Computer:    xxx
    Description:
    Faulting application name: runtimeagent.exe, version: 1.0.5025.0, time stamp: 0x49aebed4
    Faulting module name: BTCore.dll, version: 1.0.5025.0, time stamp: 0x49aebd45
    Exception code: 0x40000015
    Fault offset: 0x000f460e
    Faulting process id: 0x5b8
    Faulting application start time: 0x01cb2988b77799e6
    Faulting application path: C:\Program Files (x86)\Common Files\Microsoft BizTalk Adapters for Enterprise Applications\bin\runtimeagent.exe
    Faulting module path: C:\Program Files (x86)\Common Files\Microsoft BizTalk Adapters for Enterprise Applications\bin\BTCore.dll
    Report Id: 1ca9d416-957c-11df-9182-005056bc2fd0

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
    ------------------------------

    Note that the "memory is corrupt" error happens when for some reason the adapter doesn't get the expect result from the JDE server. In this case, the error from the JDE server was this:  Failed to get HAP (Host and Port) for BSFNMethod:GetNextUniqueKeyID

    In any case, this seems unrelated to the main issue (the "target machine actively refused it 127.0.0.1:15000" error in my first post).

    Instead, this crash issue seems to be coding issue with BTCore.dll where it responds inappropriately to an exception being thrown by the local JDE JAR files.

     

    Cheers,

    Dourn.

    Thursday, July 22, 2010 12:28 PM
  •  

    Hi Dourn,

    The occurrence of the "read or write protected memory" error, for the environment i'm working with, has subsided.

    The main cause of this behaviour, was fact that the BTSREL JDE update has not been applied cleanly to the JDE 7.3.3.3 system, by the CNC specialist. In fact, none of the required integration functions (e.g BTSListObjects, etc) had been added. Clearly this is crucial to the operation of the JDE adapters implementation. A JDE full package package build later, and a restart of JDE services, we could communicate cleanly (so far) with BizTalk Server.

    Im not sure how applicable this is to your environment (version of JDE etc), but clearly Microsoft's ongoing support for the "Enterprise Applications" JDE adapters is fading.

    Thiago has a good post which considers the "Death of the BizTalk JDE Adapter", due to the JDE's avilablity of native Web Services, and the exclusion of JDE in the WCF based LOB adapters.

    http://connectedthoughts.wordpress.com/2008/08/21/death-of-the-biztalk-jde-adapter/

    Are you able to leverage JDE's web services, as opposed to using this "legacy" Enterprise One adapter?

     

    Monday, July 26, 2010 3:11 AM
  • Cheers Ben.

    The E1 adapter doesn't need any packages to be built on the JDE servers, so is a slightly different situation.

    Business Services are (currently) out of the question as an upgrade to v9 of the E1 software is at least 2 years away due to the costs and migration of code necessary.

    I read Thiago's post a while back, and it did concern me that MS might drop support for JDE, but given that they're still included (and supported) for BTS 2010, I'm hoping they won't be deprecated just yet.

     

    I heard back from TeddyH, who raised the original thread (with the same problem) in the link in my first post.

    He was told by MS that there will be a fix in August.

    I'm hoping to get a confirmation on this from MS (or maybe a KB number so I can chase) but unsure how to do this - can anyone from Microsoft help?

     

    Cheers,

    Dourn.

    Monday, July 26, 2010 8:53 AM
  • After a bit of prodding, we found out that there is now a hotfix to solve this problem:

    http://support.microsoft.com/kb/2291479/

     

    Cheers,

    Dourn.
    Thursday, September 16, 2010 11:37 AM
  • Hi Dourn,

     This issue that you have talked about is still happening every now and then for my system. I have installed the hotfix. It has no effect. Any ideas?

     

    Thanks !

    Thursday, April 21, 2011 11:14 PM