6 Replies Latest reply: May 14, 2013 8:30 AM by Gerald M. RSS

    Callout failure in 11g

    Gerald M.
      Hi Gurus,

      I am currently undergoing the 11g upgrade for my client and we are using ebMS messaging, the setup is very simple. I am using the default b2b.jar file. I added in a callout and specified the absolute path for the callout but it fails. I have also specified the folder where the b2b.jar file resides in the administration/configuration tab. The callouts worked fine in 10g however none of them are working in 11g so it should be a simple configuration error on my part.

      Below is the error, any help would be greatly appreciated.
      [2013-05-10T14:33:21.757-03:00] [soa_server1] [ERROR] [] [oracle.soa.b2b.engine] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\r\n] [userId: <anonymous>] [ecid: 767564fcd3e8bb20:593c2de8:13e8a71b60a:-8000-000000000001b799,0] [APP: soa-infra] Error -: B2B-50029: B2B runtime error: java.lang.ClassNotFoundException: oracle.tip.adapter.b2b.callout.XSLTCalloutImpl[[
           at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:544)
           at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
           at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
           at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
           at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
           at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
           at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
           at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
           at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
           at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
           at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
           at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
           at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
      Caused by: java.lang.ClassNotFoundException: oracle.tip.adapter.b2b.callout.XSLTCalloutImpl
           at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
           at java.security.AccessController.doPrivileged(Native Method)
           at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
           at oracle.tip.b2b.callout.B2BCalloutHandler.loadObject(B2BCalloutHandler.java:837)
           at oracle.tip.b2b.callout.B2BCalloutHandler.invokeCallout(B2BCalloutHandler.java:671)
           at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:536)
           ... 12 more
      java.lang.ClassNotFoundException: oracle.tip.adapter.b2b.callout.XSLTCalloutImpl
           at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
           at java.security.AccessController.doPrivileged(Native Method)
           at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
           at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
           at oracle.tip.b2b.callout.B2BCalloutHandler.loadObject(B2BCalloutHandler.java:837)
           at oracle.tip.b2b.callout.B2BCalloutHandler.invokeCallout(B2BCalloutHandler.java:671)
           at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:536)
           at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
           at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
           at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
           at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
           at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
           at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
           at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
           at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
           at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
           at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
           at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
           at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)

      Regards
      Gerald
        • 1. Re: Callout failure in 11g
          Anuj Dwivedi--Oracle
          Hi Gerald,
          The callouts worked fine in 10g however none of them are working in 11g
          -----
          12.1.2 Callout Library JAR Files

          If you created your own custom callout library jar files in Oracle B2B 10g, then those jar files are not upgraded to Oracle B2B 11g.

          Instead, you must recreate your custom callout jar files using Oracle B2B 11g.

          For more information, see "Managing Callouts" in the Oracle Fusion Middleware User's Guide for Oracle B2B.

          http://docs.oracle.com/cd/E28280_01/upgrade.1111/e10127/upgrade_b2b_apps.htm#CHDDEBJJ

          -----
          java.lang.ClassNotFoundException: oracle.tip.adapter.b2b.callout.XSLTCalloutImpl
          Oracle B2B includes a predefined class file named XSLTCalloutImpl (oracle.tip.b2b.callout.XSLTCalloutImpl) that you can use for XML-to-XML transformations. The directory location for the default b2b.jar file included with Oracle B2B does not need to be specified.

          So if you want to use XSLTCalloutImpl then just create a callout under administration callout with below values -

          Implementation Class - oracle.tip.b2b.callout.XSLTCalloutImpl
          Library Name - b2b.jar
          Parameters
          Name - xsltFile
          Value - absolute path of XSLT file

          You may refer -

          http://docs.oracle.com/cd/E28280_01/user.1111/e10229/callouts.htm#CHDEFBDG

          Regards,
          Anuj
          • 2. Re: Callout failure in 11g
            Gerald M.
            Hi Anuj,

            My apologies, I should have mentioned that my callouts are just xslt files, I use the default b2b.jar file.

            Regards
            Gerald
            • 3. Re: Callout failure in 11g
              Anuj Dwivedi--Oracle
              Hi Gerald,

              Then you are using incorrect class name - oracle.tip.adapter.b2b.callout.XSLTCalloutImpl

              It should be what I mentioned above -

              Implementation Class - oracle.tip.b2b.callout.XSLTCalloutImpl
              Library Name - b2b.jar
              Parameters
              Name - xsltFile
              Value - absolute path of XSLT file

              No need to copy b2b.jar in the callout directory.

              As I mentioned above, 10g callouts can't be used in 11g and has to be re-written from scratch.

              Regards,
              Anuj
              • 4. Re: Callout failure in 11g
                Gerald M.
                Hi Anuj,

                I have changed the class (it was the default during setup) however I am getting the following now:

                [2013-05-13T13:24:48.109-03:00] [soa_server1] [ERROR] [] [oracle.soa.b2b.engine] [tid: [ACTIVE].ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 767564fcd3e8bb20:-1fa1951a:13e9eafd5a5:-8000-00000000000000eb,1:29835] [APP: soa-infra] java.net.UnknownHostException: null[[
                     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:195)
                     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
                     at java.net.Socket.connect(Socket.java:529)
                     at java.net.Socket.connect(Socket.java:478)
                     at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
                     at sun.net.NetworkClient.openServer(NetworkClient.java:118)
                     at sun.net.ftp.FtpClient.openServer(FtpClient.java:488)
                     at sun.net.ftp.FtpClient.openServer(FtpClient.java:475)
                     at sun.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:270)
                     at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:352)
                     at java.net.URL.openStream(URL.java:1010)
                     at oracle.xml.parser.v2.XMLReader.openURL(XMLReader.java:2719)
                     at oracle.xml.parser.v2.XMLReader.pushXMLReader(XMLReader.java:342)
                     at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:290)
                     at oracle.xml.xslt.XSLProcessor.newXSLStylesheet(XSLProcessor.java:706)
                     at oracle.xml.parser.v2.XSLProcessor.newXSLStylesheet(XSLProcessor.java:379)
                     at oracle.tip.b2b.callout.XSLTCalloutImpl.execute(XSLTCalloutImpl.java:70)
                     at oracle.tip.b2b.callout.CalloutExecuteWorker.doWork(CalloutExecuteWorker.java:288)
                     at oracle.tip.b2b.callout.CalloutExecuteWorker.run(CalloutExecuteWorker.java:258)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
                     at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
                java.net.UnknownHostException: null
                     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:195)
                     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
                     at java.net.Socket.connect(Socket.java:529)
                     at java.net.Socket.connect(Socket.java:478)
                     at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
                     at sun.net.NetworkClient.openServer(NetworkClient.java:118)
                     at sun.net.ftp.FtpClient.openServer(FtpClient.java:488)
                     at sun.net.ftp.FtpClient.openServer(FtpClient.java:475)
                     at sun.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:270)
                     at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:352)
                     at java.net.URL.openStream(URL.java:1010)
                     at oracle.xml.parser.v2.XMLReader.openURL(XMLReader.java:2719)
                     at oracle.xml.parser.v2.XMLReader.pushXMLReader(XMLReader.java:342)
                     at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:290)
                     at oracle.xml.xslt.XSLProcessor.newXSLStylesheet(XSLProcessor.java:706)
                     at oracle.xml.parser.v2.XSLProcessor.newXSLStylesheet(XSLProcessor.java:379)
                     at oracle.tip.b2b.callout.XSLTCalloutImpl.execute(XSLTCalloutImpl.java:70)
                     at oracle.tip.b2b.callout.CalloutExecuteWorker.doWork(CalloutExecuteWorker.java:288)
                     at oracle.tip.b2b.callout.CalloutExecuteWorker.run(CalloutExecuteWorker.java:258)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
                     at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

                ]]
                [2013-05-13T13:24:48.183-03:00] [soa_server1] [ERROR] [] [oracle.soa.b2b.engine] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\r\n] [userId: <anonymous>] [ecid: 767564fcd3e8bb20:-1fa1951a:13e9eafd5a5:-8000-00000000000000eb,0] [APP: soa-infra] B2B Label:PCBPEL_11.1.1.7.0SOABP_GENERIC_130301.0647.0008: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0[[
                     at java.util.ArrayList.RangeCheck(ArrayList.java:547)
                     at java.util.ArrayList.get(ArrayList.java:322)
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:538)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
                     at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
                     at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
                     at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)

                ]]
                [2013-05-13T13:24:48.214-03:00] [soa_server1] [ERROR] [] [oracle.soa.b2b.engine] [tid: Workmanager: , Version: 0, Scheduled=false, Started=false, Wait time: 0 ms\r\n] [userId: <anonymous>] [ecid: 767564fcd3e8bb20:-1fa1951a:13e9eafd5a5:-8000-00000000000000eb,0] [APP: soa-infra] Error -: B2B-50029: B2B runtime error: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0[[
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:544)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
                     at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
                     at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
                     at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
                Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
                     at java.util.ArrayList.RangeCheck(ArrayList.java:547)
                     at java.util.ArrayList.get(ArrayList.java:322)
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:538)
                     ... 12 more
                java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
                     at java.util.ArrayList.RangeCheck(ArrayList.java:547)
                     at java.util.ArrayList.get(ArrayList.java:322)
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:538)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
                     at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
                     at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
                     at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
                Error -: B2B-50029: B2B runtime error: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:544)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1654)
                     at oracle.tip.b2b.msgproc.Request.outgoingRequest(Request.java:1121)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessageImpl(Engine.java:1655)
                     at oracle.tip.b2b.engine.Engine.processOutgoingMessage(Engine.java:819)
                     at oracle.tip.b2b.engine.Engine.outgoingContinueProcess(Engine.java:4100)
                     at oracle.tip.b2b.engine.Engine.handleMessageEvent(Engine.java:3921)
                     at oracle.tip.b2b.engine.Engine.processEvents(Engine.java:3309)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.processEvent(ThreadWorkExecutor.java:637)
                     at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:214)
                     at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
                     at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
                     at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
                Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
                     at java.util.ArrayList.RangeCheck(ArrayList.java:547)
                     at java.util.ArrayList.get(ArrayList.java:322)
                     at oracle.tip.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:538)
                     ... 12 more


                Regards
                Gerald
                • 5. Re: Callout failure in 11g
                  Anuj Dwivedi--Oracle
                  Hi Gerald,

                  What value are you provided for string parameter "xsltFile" while creating callout? Make sure that it is an absolute path. Also make sure that there are no spaces or tabs in the starting/ending of the path. For a linux machine, example path will be like -

                  /u01/app/webapps/shared/xslt/abc.xsl

                  Regards,
                  Anuj

                  Edited by: Anuj Dwivedi on May 13, 2013 11:47 PM
                  • 6. Re: Callout failure in 11g
                    Gerald M.
                    Hi Anuj,

                    That helped however there was another problem. On the administration->callout tab, I had the absolute path specified without issue.

                    However, on the agreement screen is where things were also wrong. When I clicked the callout details, the system had the path as empty however hovering over it with my mouse displayed the path so I didn't fill it in. This time around I hard coded the path in that field as well and everything is now working properly.

                    Thank you for all your help.

                    Regards
                    Gerald

                    Edited by: Gerald M. on May 14, 2013 6:29 AM- formatting