Topic
3 replies Latest Post - ‏2010-03-03T18:57:17Z by SystemAdmin
Izem
Izem
6 Posts
ACCEPTED ANSWER

Pinned topic How to use ICI 8.5 in JEE environment

‏2010-02-19T21:24:42Z |
I am working on a proof-of-concept to use ICI 8.5.1 in JEE environment. The client JEE application is using SessionPool, RMI proxy connector, and MultiQuery to interact with OnDemand repository. I added vbr.jar and AccessServices to the application classpath. When I execute a query I get an error (see stack below). AccessServices is trying to access config xml under WebSphere Application Server profile (with a null in the path). When I copy config.xml to that path it works.

Does the client JEE application need to access directly the ICI config file (config.xml)?

Is there a property to set on WAS/application to point to config.xml?

Is there some documentation on how to set up ICI with SessionPool and RMI proxy connector in a distributed JEE environement?
2/19/10 15:37:05:068 EST 0000001d SystemOut O 0 WebContainer : 1 ERROR (Utilities.java:432) - COEO0452E: Unable to deserialize the object from the file: C:\profiles\Manager_1_0\null\config.xml.
java.io.FileNotFoundException: C:\profiles\Manager_1_0\null\config.xml (The system cannot find the path specified.)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:135)
at java.io.FileInputStream.<init>(FileInputStream.java:95)
at com.venetica.vbr.tools.utils.Utilities.deserializeFromXML(Utilities.java:430)
at com.venetica.vbr.configuration.ConfigurationTree.load(ConfigurationTree.java:106)
at com.venetica.vbr.ejb.access.mqa.BasicMultiQueryAgent.getEnableMultiQueryThreadPooling(BasicMultiQueryAgent.java:479)
at com.venetica.vbr.ejb.access.mqa.BasicMultiQueryAgent.execute(BasicMultiQueryAgent.java:110)
at com.venetica.vbr.ejb.access.AccessServices.execMultiQuery(AccessServices.java:2755)
at com.venetica.vbr.client.MultiQuery.execItemQuery(MultiQuery.java:1567)
at com.ocp.com.service.component.iice.ManagerImpl.getDocuments(ManagerImpl.java:309)
at com.ocp.com.service.component.ManagerFacade.getDocuments(ManagerFacade.java:74)
at com.ocp.com.testharness.SearchBean.doSearch(SearchBean.java:306)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:127)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:73)
at javax.faces.component.UICommand.broadcast(UICommand.java:312)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:302)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:419)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:220)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:592)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:524)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
2/19/10 15:37:05:084 EST 0000001d SystemOut O 16 WebContainer : 1 ERROR (Utilities.java:432) - COEO0452E: Unable to deserialize the object from the file: C:\profiles\Manager_1_0\null\config.xml.
java.io.FileNotFoundException: C:\profiles\Manager_1_0\null\config.xml (The system cannot find the path specified.)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:135)
at java.io.FileInputStream.<init>(FileInputStream.java:95)
at com.venetica.vbr.tools.utils.Utilities.deserializeFromXML(Utilities.java:430)
at com.venetica.vbr.configuration.ConfigurationTree.load(ConfigurationTree.java:106)
at com.venetica.vbr.threads.CIThreadPoolExecutor.getInstanceForMultiQuery(CIThreadPoolExecutor.java:108)
at com.venetica.vbr.ejb.access.mqa.BasicMultiQueryAgent.execute(BasicMultiQueryAgent.java:163)
at com.venetica.vbr.ejb.access.AccessServices.execMultiQuery(AccessServices.java:2755)
at com.venetica.vbr.client.MultiQuery.execItemQuery(MultiQuery.java:1567)
at com.ocp.com.service.component.iice.ManagerImpl.getDocuments(ManagerImpl.java:309)
at com.ocp.com.service.component.ManagerFacade.getDocuments(ManagerFacade.java:74)
at com.ocp.com.testharness.SearchBean.doSearch(SearchBean.java:306)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:127)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:73)
at javax.faces.component.UICommand.broadcast(UICommand.java:312)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:302)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:419)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:220)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:592)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:524)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
2/19/10 15:37:05:084 EST 0000001d SystemOut O [!] 15:37:05:084 2/19/10: -405901114845213280 Java Class: com.venetica.vbr.ejb.access.AccessServices --> COEJ0012E: An error occurred while running the federated content query agent.
2/19/10 15:37:05:084 EST 0000001d Manager E Exception in getDocuments: COEJ0012E: An error occurred while running the federated content query agent.
com.venetica.vbr.client.InvalidQueryException: COEJ0012E: An error occurred while running the federated content query agent.
at com.venetica.vbr.ejb.access.AccessServices.execMultiQuery(AccessServices.java:2757)
at com.venetica.vbr.client.MultiQuery.execItemQuery(MultiQuery.java:1567)
at com.ocp.com.service.component.iice.ManagerImpl.getDocuments(ManagerImpl.java:309)
at com.ocp.com.service.component.ManagerFacade.getDocuments(ManagerFacade.java:74)
at com.ocp.com.testharness.SearchBean.doSearch(SearchBean.java:306)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:127)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:73)
at javax.faces.component.UICommand.broadcast(UICommand.java:312)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:302)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:419)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:220)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:592)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:524)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
Caused by: com.venetica.vbr.client.ConfigurationException: COEF0013E: The configuration data cannot be loaded from file: null\config.xml MultiQuery Thread Pool config values retrieved (min: null, max: null, timeout: null). Exception: com.venetica.vbr.client.ConfigurationException: COEF0013E: The configuration data cannot be loaded from file: C:\profiles\Manager_1_0\null\config.xml. Exception: java.io.IOException COEO0452E: Unable to deserialize the object from the file: C:\profiles\Manager_1_0\null\config.xml.
at com.venetica.vbr.threads.CIThreadPoolExecutor.getInstanceForMultiQuery(CIThreadPoolExecutor.java:138)
at com.venetica.vbr.ejb.access.mqa.BasicMultiQueryAgent.execute(BasicMultiQueryAgent.java:163)
at com.venetica.vbr.ejb.access.AccessServices.execMultiQuery(AccessServices.java:2755)
... 35 more
Updated on 2010-03-03T18:57:17Z at 2010-03-03T18:57:17Z by SystemAdmin
  • Izem
    Izem
    6 Posts
    ACCEPTED ANSWER

    Re: How to use ICI 8.5 in JEE environment

    ‏2010-02-21T21:33:54Z  in response to Izem
    I added Java property vbr.home with the value of IICE_HOME.
    • SystemAdmin
      SystemAdmin
      254 Posts
      ACCEPTED ANSWER

      Re: How to use ICI 8.5 in JEE environment

      ‏2010-02-23T20:35:51Z  in response to Izem
      Hi,

      The error message "java.io.FileNotFoundException: C:\profiles\Manager_1_0\null\config.xml (The system cannot find the path specified.)" indicates that the config.xml file could not be accessed in the directory pointed at by the 'vbr.home' property. To get around this issue, make sure that you have your config.xml file located in the 'vbr.home' directory, or conversely that the 'vbr.home' property is pointed to the directory where your config.xml is located. Also, make sure that the permissions on the config.xml are set appropriately so that your app server will be able to open the file.
      • SystemAdmin
        SystemAdmin
        254 Posts
        ACCEPTED ANSWER

        Re: How to use ICI 8.5 in JEE environment

        ‏2010-03-03T18:57:17Z  in response to SystemAdmin
        Hi Izem,

        Just wondering if you got your problem resolved?