webMethods

webMethods

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

BSCS Adapter

  • 1.  BSCS Adapter

    Posted Mon October 20, 2008 12:32 PM

    We have a package “OTechBscsCasAdapter” which an adapter for BSCS. It was developped with webMethods 6.1. We installed webMethods 6.5 and we try do the migration for that package (the package was re-compiled). At the loading time of the package we always have the same error for the 2 services of the package (“startup” & “shutdown”) :

    2008-10-20 11:39:32 CEST [ISS.0026.0002E] Failure while loading service OTechBscsCas.admin:startup: java.lang.NoClassDefFoundError: com/wm/adk/WmAdapter
    2008-10-20 11:39:32 CEST [ISS.0026.0002E] Failure while loading service OTechBscsCas.admin:shutdown: java.lang.NoClassDefFoundError: com/wm/adk/WmAdapter

    WmAdapter is located in the “wmart.jar” which is well loaded at start time. We tried to reference wmart.jar in “application.classpath” property but then there are several other errors.

    Would you have any idea ?


    #webMethods
    #Integration-Server-and-ESB
    #Adapters-and-E-Standards


  • 2.  RE: BSCS Adapter

    Posted Mon October 20, 2008 08:18 PM

    Is this your custom jar file??

    If yes then try placing the wmart.jar in the specific pacakge itself i.e.

    packages\OTechBscsCasAdapter\code\jars\static folder or IS\lib\jars folder and either ways…and finally restart IS.Check the Package load errors still if any…

    HTH,
    RMg


    #webMethods
    #Adapters-and-E-Standards
    #Integration-Server-and-ESB


  • 3.  RE: BSCS Adapter

    Posted Mon October 20, 2008 08:37 PM

    If it is the wmart.jar from the WmART package, that package (and I believe the jar) changed from 6.1 to 6.5. That may be causing the problem if the new wmart.jar is what is loading.

    I’d also take a look at the code from OTechBscsCas.admin:startup and see what method it is trying to call in com.wm.adk.WmAdapter. Perhaps that method no longer is implemented in the same way.


    #Integration-Server-and-ESB
    #webMethods
    #Adapters-and-E-Standards


  • 4.  RE: BSCS Adapter

    Posted Tue October 21, 2008 03:13 PM

    Thanks for your advice.
    I put the wmart.jar in the folder IS/lib/jars. I do not have anymore the exception "java.lang.NoClassDefFoundError" about WmAdapter class at loading time of the package. It appears as fully loaded in the “Packages > Management” tab.

    But this time there is another exception :
    java.lang.NoClassDefFoundError: com/wm/pkg/art/log/ARTJLog
    at com.wm.adk.WmAdapter.(WmAdapter.java:54)
    at com.capgemini.tmnf.adapter.BSCSCASAdapter.BSCSCASAdapter.(BSCSCASAdapter.java:47)
    at com.capgemini.tmnf.adapter.BSCSCASAdapter.BSCSCASAdapter.getInstance(BSCSCASAdapter.java:164)
    at OTechBscsCas.admin.startup(admin.java:94)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:322)
    at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:612)
    at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsPr$
    at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:235)
    at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49)
    at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:198)
    at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39)
    at com.wm.app.b2b.server.AuditLogManager.process(AuditLogManager.java:411)
    at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:521)
    at com.wm.app.b2b.server.invoke.InvokeManager.invoke(InvokeManager.java:369)
    at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:246)
    at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:128)
    at com.wm.app.b2b.server.ServiceManager.invoke(ServiceManager.java:100)
    at com.wm.app.b2b.server.SessionInvoke.run(Session.java:705)
    at com.wm.util.pool.PooledThread.run(PooledThread.java:105)
    at java.lang.Thread.run(Thread.java:595)

    ARTJLog class is used in the WmAdapter class. The class file is not located in the “wmart.jar” file but in the folder IS/packages/WmART/code/classes/com/wm/pkg/art/log.

    WmART package is well defined as a dependecy of our specific package “OTechBSCSCas” but it seems that none of WmART ressources can be accessed. I do not understand??


    #Adapters-and-E-Standards
    #webMethods
    #Integration-Server-and-ESB


  • 5.  RE: BSCS Adapter

    Posted Tue October 21, 2008 03:47 PM

    Did you put wmart.jar in the packages\OTechBscsCasAdapter\code\jars\static folder also?? and reload the package.

    Also it could be WmART procedure itself changed from 61 vs 65 with the custom adapter framework development.

    HTH,
    RMg


    #webMethods
    #Adapters-and-E-Standards
    #Integration-Server-and-ESB


  • 6.  RE: BSCS Adapter

    Posted Tue October 21, 2008 05:14 PM

    I put the wmart.jar in the folder packages\OTechBscsCasAdapter\code\jars\static also. But unfortunately the same result.

    Thanks.
    Christophe.


    #Adapters-and-E-Standards
    #Integration-Server-and-ESB
    #webMethods


  • 7.  RE: BSCS Adapter

    Posted Tue October 21, 2008 05:23 PM

    Thanks,
    Yes the WmAdapter is located in the wmart.jar which is well loaded at start time. This package is also registered in our specific package as a dependency. I do not understand why this wmart.jar ressources can not be accessed by our package at the loading. Maybe the “manifest.v3” has changed between 6.1 and 6.5?

    Here is the startup source code :
    public static final void startup(IData pipeline) throws ServiceException{
    try {
    Runtime cr = Runtime.getRuntime();
    cr.runFinalization();
    cr.gc();

          // -- Only 1 instance of the CasConnectJNI.dll is permitted (first problem)
    
    // get the main class loader
    ClassLoader cl0 = ClassLoader.getSystemClassLoader();
    
    // load the main CAS client class
    // => this class must be accessible from the main class loader
    Class c = cl0.loadClass("com.mobistar.cas.CasConnectJNI");
    
    // instanciate the CasConnectJNI class to load the DLL
    Object ccj = c.newInstance();
    
    // the CASConnectJNI class is now reachable from the main class loader
    // any IS package code can use it
    // only 1 instance of the DLL is needed
    
    // -- Now instanciate the adapter (one instance only) with the current
    // classloader => the class is put within the current package scope.
    BSCSAdapter instance = BSCSAdapter.getInstance();
    
    // and register the adapter instance
    if (instance!=null) {AdapterAdmin.registerAdapter(instance);}
    
    // initialization done.
    } catch (Throwable t) {
    throw new ServiceException(t);
    }
    

    return;
    }
    and the “BSCSCASAdapter” extends WmAdapter class.

    Christophe.


    #webMethods
    #Integration-Server-and-ESB
    #Adapters-and-E-Standards


  • 8.  RE: BSCS Adapter

    Posted Wed October 22, 2008 12:47 AM

    Do you see the IS/lib/jars/wmart.jar listed in the ISAdmin’s About section page??


    #Integration-Server-and-ESB
    #webMethods
    #Adapters-and-E-Standards


  • 9.  RE: BSCS Adapter

    Posted Wed October 22, 2008 09:11 AM

    Hi,
    yes IS/lib/jars/wmart.jar is listed in the Server classpath section of the About page :

    Software Product webMethods Integration Server Version 6.5 Updates WmPRT_6-5-1_SP1
    IS_6-5_SP3
    Build Number 394 SSL Strong (128-bit) Server Environment Java Version 1.5.0_06 (49.0) Java Data Model 32-bit Java Vendor Sun Microsystems Inc. Java Home /usr/jdk/instances/jdk1.5.0/jre Java Classpath /usr/java/jre//lib/i18n.jar
    /SFW/webmet//IntegrationServer/lib/proxy.jar
    /SFW/webmet//IntegrationServer/lib/system/CAS.jar
    /SFW/webmet//IntegrationServer/lib/system/casclient.jar
    Server Classpath /SFW/webmet/IntegrationServer/updates/WmPRT_6-5-1_SP1.jar
    /SFW/webmet/IntegrationServer/updates/IS_6-5_SP3.jar
    /SFW/webmet//IntegrationServer/lib/classes/
    /SFW/webmet//IntegrationServer/lib/server.jar
    /SFW/webmet//IntegrationServer/lib/client.jar
    /SFW/webmet//IntegrationServer/lib/mail.jar
    /SFW/webmet//common/lib/wmbrokerclient.jar
    /SFW/webmet//common/lib/wmjmsclient.jar
    /SFW/webmet//common/lib/jms.jar
    /SFW/webmet/IntegrationServer/packages/OTechBscsCas/code/jars/BSCSCASAdapter.jar
    /SFW/webmet//IntegrationServer/lib/entrust/enttoolkit.jar
    /SFW/webmet/IntegrationServer/replicate/salvage/OTechBscsCas/code/jars/BSCSCASAdapter.jar
    /SFW/webmet/IntegrationServer/lib/jars/wmart.jar
    /SFW/webmet/IntegrationServer/lib/jars/xmlParserAPIs.jar
    /SFW/webmet/IntegrationServer/lib/jars/client_withFix92.jar
    /SFW/webmet/IntegrationServer/lib/jars/resolver.jar
    /SFW/webmet/IntegrationServer/lib/jars/xml-apis.jar
    /SFW/webmet/IntegrationServer/lib/jars/sl53_cj36.jar
    /SFW/webmet/IntegrationServer/lib/jars/xercesImpl.jar
    /SFW/webmet/IntegrationServer/packages/WmJDBCAdapter/code/jars/static/javaxsql.zip
    /SFW/webmet/IntegrationServer/packages/WmWin32/code/classes/
    /SFW/webmet/IntegrationServer/packages/WmFlatFile/code/jars/static/ffcore.jar
    /SFW/webmet/IntegrationServer/packages/WmART/code/jars/static/wmartbundle.jar
    /SFW/webmet/IntegrationServer/packages/WmPRT/code/jars/static/commons-jxpath-1.1.jar
    /SFW/webmet/IntegrationServer/packages/WmPRT/code/jars/static/1jxpathpatch.jar
    /SFW/webmet/IntegrationServer/packages/WmPRT/code/jars/static/jwsdl-1.0.jar
    /SFW/webmet/IntegrationServer/packages/WmPRT/code/jars/static/wmprt.jar
    /SFW/webmet/IntegrationServer/packages/WmPRT/code/jars/static/castor-0.9.5.2.jar
    /SFW/webmet/IntegrationServer/packages/OTechBscsCas/code/jars/static/wmart.jar
    /usr/app/oracle/10g/product/jdbc/lib/classes12.zip
    OS SunOS OS Platform sparc OS Version 5.10 Current User cbouvet Working Dir /SFW/webmet/IntegrationServer Packages/Updates View


    #Integration-Server-and-ESB
    #webMethods
    #Adapters-and-E-Standards


  • 10.  RE: BSCS Adapter

    Posted Tue November 04, 2008 02:05 PM

    Instead of coping the wmart.jar file here and there you should just set the dependency of your package on WmART package. This way they will share the class loader and all the Java objects defined in WmART package will be available to your package.

    HTH


    #webMethods
    #Adapters-and-E-Standards
    #Integration-Server-and-ESB


  • 11.  RE: BSCS Adapter

    Posted Tue November 04, 2008 02:08 PM

    ok, thanks.
    The dependency was correctly set in our package. The problem is now solved. It was due to a problem of location installation of one of our component.


    #Adapters-and-E-Standards
    #Integration-Server-and-ESB
    #webMethods