Topic
5 replies Latest Post - ‏2009-01-06T21:13:55Z by SystemAdmin
SystemAdmin
SystemAdmin
11979 Posts
ACCEPTED ANSWER

Pinned topic WSAD-deploying EAR through admin console: invalid binaries path?

‏2005-04-19T20:34:43Z |
Hi,

I'm having trouble deploying even the simplest EAR file through WSAD admin console. It throws an exception indicating "invalid binaries path".
Would anyone happen to know anything about it ?

The details:
1) Use WSAD to create a simple J2EE project called BEar, containing a single "helloWorld" Web Module.
2) Export it to an EAR file, somewhere on the file system.
3) On WSAD, create a new Server (Test Environment).
4) Run admin console. Use "install new applications" to install the EAR.
5) Still in admin console, start the new application.

This throws an excpetion, indicating "invalid binaries path".
What does "binaries path" mean ?
Is it related to the "binariesURL" property, in file "BEar/deployment.xml" (somewhere under Servers) ? I noticed that when you deploy through admin console, you get "binariesURL=${WS_EAR_BEar}". When deploying though WSAD ("Run on Server"), it becomes "binariesURL="$(APP_INSTALL_ROOT)/localhost/BEar.ear".
Does it help ?

Here's a shortened version of my stack trace. Note it mentions "application.xml" but I couldn't find anything wrong with it.


shortened stack trace:
23:45:10:578 IDT 19/04/05 119130d9 ApplicationMg W WSVR0100W: An error occurred initializing, BEar
com.ibm.ws.exception.ConfigurationWarning: Failed to open D:\projects\wsad5.1\Servers\server2.wsc\cells\localhost\applications\BEar.ear\deployments\BEar
at com.ibm.ws.runtime.component.DeployedApplicationImpl.initialize(DeployedApplicationImpl.java:414)
... trimmed by solmyr...
Caused by: com.ibm.etools.archive.exception.DeploymentDescriptorLoadException: META-INF/application.xml
at com.ibm.etools.commonarchive.impl.EARFileImpl.getDeploymentDescriptor(EARFileImpl.java:411)
com.ibm.etools.commonarchive.impl.EARFileImpl.initializeModuleExtensions(EARFileImpl.java:793)
... trimmed by solmyr...
  • Begin backtrace for nested exception
com.ibm.etools.archive.exception.DeploymentDescriptorLoadException: META-INF/application.xml
Stack trace of nested exception:
com.ibm.etools.archive.exception.ArchiveRuntimeException: Invalid binaries path: D:\projects\wsad5.1/localhost/BEar.ear
at com.ibm.etools.archive.impl.LoadStrategyImpl.checkLoosePathsValid(LoadStrategyImpl.java:492)
... trimmed by solmyr...
Thanks :)
Updated on 2009-01-06T21:13:55Z at 2009-01-06T21:13:55Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    11979 Posts
    ACCEPTED ANSWER

    Re: WSAD-deploying EAR through admin console: invalid binaries path?

    ‏2005-05-11T15:57:43Z  in response to SystemAdmin
    I'm having the same exact problem...

    Doesn't anyone using WSAD adhere to the concepts of continuous integration and using build scripts to guarantee the integrity of both local and remote builds?

    This should be coming up all over the place...
    • SystemAdmin
      SystemAdmin
      11979 Posts
      ACCEPTED ANSWER

      Re: WSAD-deploying EAR through admin console: invalid binaries path?--One solution

      ‏2005-05-16T07:21:36Z  in response to SystemAdmin
      I met the same problem today and then found some info in the following page and get this problem solved.

      http://www.webservertalk.com/message51998.html

      It says:
      "--------------------------------------------------------
      The problem was caused by a configuration conflict (maybe two administrators
      saved the master configuration repository at the same time, leaving it with
      inconsistencies) resulting in node synchronization failures.

      You can troubleshoot this in the following way:

      • Look for the serverindex.xml file at every node directory (/opt/Websphere/
      DeploymentManager/config/cells/cell_name/nodes/node_name/serverindex.xml).
      This configuration file contains entries for every deployed application in t
      he node (<deployedApplications>MyApp.ear</deployedApplications> ).
      • Each entry <deployedApplication> entries must have a corresponding dire
      ctory in
      /opt/Webpshere/DeploymentManager/config/cells/cell_name/applications.
      • It's very likely that you'll have some missing application folders (in oth
      er words, you have some <deployedApplication> entries in serverindex.html
      , which do not have a corresponding application folder). You must delete the
      <deployedApplication> e
      ntry in serverindex.xml for these apps.
      • Perform a full resync (either using adminconsole, or by stopping the node
      agent and running syncNode).
      • Reinstall your application.
      "--------------------------------------------------------
      • SystemAdmin
        SystemAdmin
        11979 Posts
        ACCEPTED ANSWER

        Re: WSAD-deploying EAR through admin console: invalid binaries path?--One solution

        ‏2005-05-16T07:53:38Z  in response to SystemAdmin
        Sorry that what I suggested above is not the exact solution to your problem, because you used WSAD Test Environment and the above solution is to WAS deployment. But it seems that they are similar problems.
        • SystemAdmin
          SystemAdmin
          11979 Posts
          ACCEPTED ANSWER

          Re: WSAD-deploying EAR through admin console: invalid binaries path?--One solution

          ‏2008-01-03T15:48:21Z  in response to SystemAdmin
          I've experienced the same problem and found it to be an issue with the deployment.xml file. This file is created when the EAR is installed. The issue I had was that the deployment.xml file had the wrong location for the installed EAR in the binariesURL attribute of the deployedObject element.

          When I tried to start the EAR within WSAD admin console I got the following error:

          com.ibm.etools.archive.exception.DeploymentDescriptorLoadException: META-INF/application.xml
          Stack trace of nested exception:
          com.ibm.etools.archive.exception.ArchiveRuntimeException: Invalid binaries path: D:\work\BCC\Workspace/localhost/MyApp.ear

          <hr />

          The deployments.xml file had the following entry
          binariesURL="$(APP_INSTALL_ROOT)/localhost/MyApp.ear"

          Using the error message I got in the stack trace I worked out that the {$APP_INSTALL_ROOT} was D:\work\BCC\Workspace

          The solution requires that you locate where the EAR had been installed on the file system. I found the EAR installed under the server project as follows:
          d:\work\BCC\Servers\WSAD V5.1 Local Only.wsc\cells\localhost\applications

          To fix the issue you need to update the binariesURL so that it points to the location where the installed EAR resides on the file system. In my case I updated the deployment.xml with the following:
          binariesURL="$(APP_INSTALL_ROOT)/../Servers/WSAD V5.1 Local Only.wsc/cells/localhost/applications/MyApp.ear"

          Save your changes and try starting the EAR from within the admin console. It should work now, providing the classpath has been set up correctly.
          • SystemAdmin
            SystemAdmin
            11979 Posts
            ACCEPTED ANSWER

            Re: WSAD-deploying EAR through admin console: invalid binaries path?--One solution

            ‏2009-01-06T21:13:55Z  in response to SystemAdmin
            I have my deployments.xml in couple of places for instance ...
            C:\Program Files\IBM\SDP70\runtimes\base_v51\config\cells\localhost\applications\adminconsole.ear
            C:\Program Files\IBM\SDP70\runtimes\base_v51\config\cells\localhost\applications\adminconsole.ear\deployments\adminconsole
            Am not sure if its the same file in 2 different places, or ones the source and others the target.

            so i changed my deployments.xml to point to
            binariesURL="$(APP_INSTALL_ROOT)/config/cells/localhost/applications/adminconsole.ear"
            but the change did not work !

            Am assuming the classpath mentioned by dacfi is my server classpath in Environment -> Class Path which points to 2 different locations in my local system.

            Am i missing/doing something wrong in here ? Any help is truely appreciated as am having this problem for quite some time now.