Ear files intermittently not binding on OAS 10.1.3.3

Over the last couple of weeks I have noticed that when i deploy EAR files some apps don't start up and can't access the login pages. ie:(the Request Processing Time in EM is blank)
Then sometimes i can just restart the specific app and it works but sometimes it doesn't
Then I will try and undeploy and deploy manually and it will fail with the error below. Then sometime later i will do the same thing and it works.
[24-Aug-2009 2:45:14 PM] Binding web application(s) to site default-web-site begins...
[24-Aug-2009 2:45:14 PM] Binding occamweb web-module for application occam to site default-web-site under context root OnDemand
[24-Aug-2009 2:45:15 PM] Operation failed with error: Not in an application scope - start OC4J with the -userThreads switch if using user-created threads
Not sure what is happening exactly but hopefully you may be able to help out?

Over the last couple of weeks I have noticed that when i deploy EAR files some apps don't start up and can't access the login pages. ie:(the Request Processing Time in EM is blank)
Then sometimes i can just restart the specific app and it works but sometimes it doesn't
Then I will try and undeploy and deploy manually and it will fail with the error below. Then sometime later i will do the same thing and it works.
[24-Aug-2009 2:45:14 PM] Binding web application(s) to site default-web-site begins...
[24-Aug-2009 2:45:14 PM] Binding occamweb web-module for application occam to site default-web-site under context root OnDemand
[24-Aug-2009 2:45:15 PM] Operation failed with error: Not in an application scope - start OC4J with the -userThreads switch if using user-created threads
Not sure what is happening exactly but hopefully you may be able to help out?

Similar Messages

  • Error in deploying, EAR file does not contain SAP_MANIFEST.MF

    I just upgraded to SAP Netweaver Developer Studio 7.1 from 7.0, and the process of creating and deploying an EJB archive seems to be quite different. Here are the steps I am following:
    (1) I create and build an EJB Project called foo.
    (2) Export the EJB Project foo as an EJB JAR (not sure if this is necessary)
    (3) Create an Enterprise Applications project called fooEAR, with target runtime set to SAP server. When I am prompted for J2EE Modules to add, I select foo (created in step (1)).
    (4) Export the EAR project fooEAR as an EAR file. When I am prompted for which EAR application I choose fooEAR.
    (5) Try to deploy the EAR created in (4) using Deploy View -> External Deployable Archives -> Add, then choose the fooEAR.ear as the target. But I get an error message:
    Wrong SDA/SCA archive
    Error while loading archive ...
    Archive has no entry META-INF/SAP_MANIFEST.MF
    I looked inside fooEAR.ear, and there is no SAP_MANIFEST.MF file. How can I create an EAR that has such a file ?

    Hi Ivaylo,
    to answer your first question, the EAR that I am trying
    to deploy gets created as part of the publish step. When
    I look in the application.xml file of this EAR I see a
    version attribute with value of 1.4 in the application
    tag, can we assume that this implies J2EE 1.4 compliancy?
    One thing about this generated EAR is that it does not
    include any java code (VM or otherwise). When I generate
    the EAR by hand (by exporting the EJB project as an EAR
    file there is a JAR for the actual java code put in
    there, but when generating the EAR via publish there is
    only some xml and manifest stuff put in the EAR, with the
    result that it's only 2KB or so in size. I have specified
    a J2EE module dependency from the Enterprise Application
    project to the EJB project, but is there something else I
    need to do to ensure that the java code (jar) gets
    included in the EAR of the Enterprise Application when
    attempting to deploy via publish?
    Thanks for the other suggest, "Import J2EE Archive".
    However, I am having difficulty locating this button.
    When I look at the "Deploy View" window I see on the left
    the Workspace and External Deployable Archives trees,
    and on the right there are "Setting for Updating
    SCAs/SDAs" radio buttons, as well as "Error Strategy"
    radio buttons, but no "Import J2EE Archive" button.
    Thanks for the info about SDM by the way, I was wondering
    why I was not able to launch it (there is still a remote
    gui shortcut, which should probably go away).

  • .ear file is not including all the required files for deployment

    While deploying from JDeveloper, some of the files (eg. <Project>.cpx file, .class file) are not included in the .ear file.
    Pls help.

    Is the .ear file deployed with the Deploy to EAR file selection?

  • New OC4J Instance : Deployed EAR File : Page not Found !

    Hi,
    I have installed the Oracle Apps Middle Tier on one of my systems.
    I created a new OC4J instance named OC4J_Custom and deployed an ear file with a couple of Test Servlets. Now, when I enter the URL for the Middle Tier OC4J :
    http://middletier:7778/my_app/HomeServlet
    I only see a " The page cannot be displayed " error !.
    I even checked in the mod_oc4j.conf file - the settings seem to be correct :
    Oc4jMount /my_app OC4J_Custom
    Oc4jMount /my_app/* OC4J_Custom
    Do I need to do any other settings ?
    Regards,
    Sandeep

    Is there a servlet mapped to HomeServlet in the web.xml file so it can be accessed like that?
    Can you access any other resources -- ie a .html or .jsp page in that deployed app?
    If you are using Internet Exploder, then one thing to try is turn off the "Show Friendly Error Pages" option in the custom settings. By default IE hides the error details, which might give you some more information here.
    cheers
    -steve-

  • EAR file is not deployed on all nodes when using SDM/Visual admin

    Hi
    We have a High availability portal landscape with multiple App Servers. When we deploy our custom applications (.EAR) using either SDM or Visual Administrator the file always deploys only onto the Central Instance and the end user some times sees blank screen becoz the load balancer routs the request to some other node (non Central Instance).
    Any helpful answer will be awarded with points !!
    Thanks
    Lakshmi

    Hi Lakshmi,
    Restarting the SAP System should synchronize the components among the application servers.
    You can also check if any of the components need to be updated by going to the deployment overview @ System Administation ->Support -> Support Desk-> Portal Runtime -> Deployment Overview
    This link might be of help.
    http://help.sap.com/saphelp_nw70/helpdata/en/f7/71b842b714b211e10000000a155106/frameset.htm
    Regards,
    Abhishek

  • .ear files are not deployed correctly under multi instances environment

    We have 1 CI and 3DI.
    In one server there are 1 CI and 1DI.
    and in the other 2 servers there is 1 DI each.
    I developed a program with Webdynpro Java and deployed correctly.
    But after that I could run the application in only the specific server.
    For example I could run the applicaion in A,B server but not C server.
    What's the problem?

    Thanks for the reply.
    I know it'll be solved after restart.
    But it's not easy to restart DI during working hour.
    Isn't there any other way to solve this problem?

  • Intermittent 404 error after deploying EAR file

    I deployed my web application to an EAR file and deployed it to OAS 10.1.3 on linux. I deployed it to a separate OC4J container that I created (not home container). During the deployment, I specified an application name and context as usual and did not make any modifications to the deployment. After I deployed (and waited enough time for the application to be uncompressed), I get a 404 error when I access my application. I will then refresh my browser and then my application is accessible. This happens all the time. What am I doing wrong?
    Thanks in advance and please let me know if I need to provide any more detail.
    -Quoc

    We have one OAS instance with 3 containers. We're using OHS too. OHS is in the same OAS instance and no changes were done to mod_oc4j.conf file.
    Here's my mod_oc4j.conf:
    # Oracle iAS mod_oc4j configuration file: mod_oc4j.conf #
    LoadModule oc4j_module libexec/mod_oc4j.so
    <IfModule mod_oc4j.c>
    </IfModule>
    Here's opmn.xml:
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <opmn xmlns="http://www.oracle.com/ias-instance">
    <log path="$ORACLE_HOME/opmn/logs/opmn.log" comp="internal;ons;pm" rotation-size="1500000"/>
    <debug path="$ORACLE_HOME/opmn/logs/opmn.dbg" comp="" rotation-size="1500000"/>
    <notification-server interface="ipv4">
    <port local="6100" remote="6202" request="6005"/>
    <ssl enabled="true" wallet-file="$ORACLE_HOME/opmn/conf/ssl.wlt/default"/>
    </notification-server>
    <process-manager>
    <process-modules>
    <module path="$ORACLE_HOME/opmn/lib/libopmnohs">
    <module-id id="OHS"/>
    </module>
    <module path="$ORACLE_HOME/opmn/lib/libopmnoc4j">
    <module-id id="OC4J"/>
    </module>
    <module path="$ORACLE_HOME/opmn/lib/libopmncustom">
    <module-id id="CUSTOM"/>
    </module>
    <module path="$ORACLE_HOME/opmn/lib/libopmniaspt">
    <module-id id="IASPT"/>
    </module>
    </process-modules>
    <ias-instance id="appserv.devportal.sraprod.com" name="appserv.devportal.sraprod.com">
    <environment>
    <variable id="TMP" value="/tmp"/>
    </environment>
    <module-data>
    <category id="start-parameters">
    <data id="routing-id" value="g_rt_id"/>
    </category>
    </module-data>
    <ias-component id="IASPT" status="disabled">
    <environment>
    <variable id="LD_LIBRARY_PATH" value="/oracle/appserv/lib" append="true"/>
    </environment>
    <process-type id="IASPT" module-id="IASPT" working-dir="/oracle/appserv/iaspt/bin">
    <port id="ajp" range="7501-7600"/>
    <process-set id="IASPT" numprocs="1"/>
    </process-type>
    </ias-component>
    <ias-component id="HTTP_Server">
    <process-type id="HTTP_Server" module-id="OHS">
    <module-data>
    <category id="start-parameters">
    <data id="start-mode" value="ssl-enabled"/>
    </category>
    </module-data>
    <process-set id="HTTP_Server" numprocs="1"/>
    </process-type>
    </ias-component>
    <ias-component id="default_group">
    <process-type id="home" module-id="OC4J" status="enabled">
    <module-data>
    <category id="start-parameters">
    <data id="java-options" value="-server -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false -XX:MaxPermSize=128M -Xms512M -Xmx1024M -XX:AppendRatio=3"/>
    </category>
    <category id="stop-parameters">
    <data id="java-options" value="-Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    </category>
    </module-data>
    <start timeout="600" retry="2"/>
    <stop timeout="120"/>
    <restart timeout="720" retry="2"/>
    <port id="default-web-site" range="12501-12600" protocol="ajp"/>
    <port id="rmi" range="12401-12500"/>
    <port id="jms" range="12601-12700"/>
    <port id="rmis" range="12701-12800"/>
    <process-set id="default_group" numprocs="1"/>
    </process-type>
    <process-type id="WRS_DEV" module-id="OC4J" status="enabled">
    <module-data>
    <category id="start-parameters">
    <data id="java-options" value="-server -Xmx512m -Xms128m -Djava.security.policy=$ORACLE_HOME/j2ee/WRS_DEV/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false -XX:MaxPermSize=128M -XX:AppendRatio=3"/>
    </category>
    <category id="stop-parameters">
    <data id="java-options" value="-Djava.security.policy=$ORACLE_HOME/j2ee/WRS_DEV/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    </category>
    </module-data>
    <start timeout="600" retry="2"/>
    <stop timeout="120"/>
    <restart timeout="720" retry="2"/>
    <port id="default-web-site" range="12501-12600" protocol="ajp"/>
    <port id="rmi" range="12401-12500"/>
    <port id="rmis" range="12701-12800"/>
    <port id="jms" range="12601-12700"/>
    <process-set id="default_group" numprocs="1"/>
    </process-type>
    <process-type id="WRS_PROD" module-id="OC4J" status="enabled">
    <module-data>
    <category id="start-parameters">
    <data id="java-options" value="-server -Xmx128m -Xms64m -Djava.security.policy=$ORACLE_HOME/j2ee/WRS_PROD/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    </category>
    <category id="stop-parameters">
    <data id="java-options" value="-Djava.security.policy=$ORACLE_HOME/j2ee/WRS_PROD/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    </category>
    </module-data>
    <start timeout="600" retry="2"/>
    <stop timeout="120"/>
    <restart timeout="720" retry="2"/>
    <port id="default-web-site" range="12501-12600" protocol="ajp"/>
    <port id="rmi" range="12401-12500"/>
    <port id="rmis" range="12701-12800"/>
    <port id="jms" range="12601-12700"/>
    <process-set id="default_group" numprocs="1"/>
    </process-type>
    <process-type id="WRS_STAG" module-id="OC4J" status="enabled">
    <module-data>
    <category id="start-parameters">
    <data id="java-options" value="-server -Xmx512m -Xms128m -Djava.security.policy=$ORACLE_HOME/j2ee/WRS_STAG/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false -XX:MaxPermSize=128M -XX:AppendRatio=3"/>
    </category>
    <category id="stop-parameters">
    <data id="java-options" value="-Djava.security.policy=$ORACLE_HOME/j2ee/WRS_STAG/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/>
    </category>
    </module-data>
    <start timeout="600" retry="2"/>
    <stop timeout="120"/>
    <restart timeout="720" retry="2"/>
    <port id="default-web-site" range="12501-12600" protocol="ajp"/>
    <port id="rmi" range="12401-12500"/>
    <port id="rmis" range="12701-12800"/>
    <port id="jms" range="12601-12700"/>
    <process-set id="default_group" numprocs="1"/>
    </process-type>
    </ias-component>
    <ias-component id="ASG" status="enabled" id-matching="true">
    <process-type id="ASG" module-id="CUSTOM">
    <start timeout="600"/>
    <stop timeout="120"/>
    <process-set id="ASG" numprocs="1">
    <module-data>
    <category id="start-parameters">
    <data id="start-executable" value="/oracle/appserv/dsa/bin/dsaServer.sh"/>
    <data id="start-args" value="/oracle/appserv/dsa/dsa.conf"/>
    <data id="stop-executable" value="/oracle/appserv/dsa/bin/dsaShutdown.sh"/>
    </category>
    </module-data>
    </process-set>
    </process-type>
    </ias-component>
    </ias-instance>
    </process-manager>
    </opmn>
    Here's the mod_oc4j routing table dump:
    mod_oc4j Global Configuration
    hostname : devportal.sraprod.com
    local instance : appserv.devportal.sraprod.com
    select method : Round-Robin
    select affinity : None
    routing mode : Static-Dynamic
    routing ID : g_rt_id
    OC4J Dynamic Routing
    application : datatags
    context : /webapp
    process (Jgroup): 0, 1, 2
    application : default
    context : /jmsrouter, /j2ee, /.rmiTunnel
    process (Jgroup): 0, 1, 2, 3
    application : system
    context : /dmsoc4j, /JMXSoapAdapter
    process (Jgroup): 0, 1, 2, 3
    application : srawrs
    context : /srawrs_stage, /srawrs_dev
    process (Jgroup): 0, 2
    application : ascontrol
    context : /em
    process (Jgroup): 3
    OC4J Static Routing
    IASPT Process List
    OC4J Process List
    process,ias instance,host,port,status
    0 : appserv.devportal.sraprod.com, devportal.sraprod.com, 12502, ALIVE
    1 : appserv.devportal.sraprod.com, devportal.sraprod.com, 12503, ALIVE
    2 : appserv.devportal.sraprod.com, devportal.sraprod.com, 12504, ALIVE
    3 : appserv.devportal.sraprod.com, devportal.sraprod.com, 12501, ALIVE
    Thanks for your help!

  • Not able to create EAR file for WAR file extracted project

    Hi Experts,
    I am trying to import a WAR file, make changes to the project and create an EAR file for the same. I am not able to remove import
    errors despite of adding required jar files to it.
    Also, I am not able to create an EAR file for the same.
    I have copied the steps here with screen shots. Below are the steps :
    Import WAR file in NWDS 7.3 – Enterprise Portal perspective
    Select WAR file to create WAR and EAR project for it.
      Project created with import errors.     e.g – com.sapportals.portal.prt*
    Found jar file from Class – target jar file table. 
    e.g – for Class com.sapportals.portal.prt.resource.IResource needed jar file is tc~epbc~prt~api.jar
    Copied required jar files in WEB-INF -> lib folder.
    Configure Build path and Add External jars.
    Portalapp file screen shot
    I think errors should go now, but they still exist.
    Next I right click on WAR project and tried updating related EAR project.
      Next, Export EAR file from EAR project.
       I have tried both EAR types.
    But EAR file is not created.
    Please help me in removing the errors.
    Thanks in advance :-)
    Anubha Pandey

    Hi Anubha,
    I feel that you're missing JAR dependencies and hence not able to resolve the above import errors.
    Please go through the below thread for the AFP Masthead customization and follow the same:
    How to download and change AFP Masthead on SAP Portal 7.3
    Hope, this will help!!!
    BR,
    Anurag

  • SAP Note 0001370334: Error while deploying EAR file

    Hi All,
    We have a project requirement where payload should not be visible in both IE(SXMB_MONI) and RWB(Channel Monitoring). We have followed sap note 0001370334 and created .ear file as per sample .ear file given in the sap note.
    Here the problem is when we are trying to deploy that .ear file using NWDS, it is throwing exception :
    [ERROR CODE DPL.DCAPI.1027] SduLoadingException.
    Additional information: 'The information about the development component found in the manifest is either missing or incomplete!
    Manifest attributes are missing or have badly formatted value:
    attribute keylocation is missing
    attribute keyname is missing
    attribute keyvendor is missing
    attribute keycounter is missing
    Kindly provide ur inputs.
    Thanks,
    Veneela

    Did you see this link?  Looks like your ear file is not as expected. Please delete and create and deploy again
    http://wiki.sdn.sap.com/wiki/display/JSTSG/%28JSTSG%29%28Deploy%29Problems-P29
    /thread/1516905 [original link is broken]

  • Not a Valid EAR File?

    JDeveloper 10.1.2
    Oracle Application Server 10.1.2
    One of our projects suddenly can't deploy their ear files. From one day to the next there were minor changes to a few jsp and java files and suddenly the application server complains that the ear file is 'not a valid ear file'. Interestingly the war file will deploy fine but not if packaged as an ear. The contents of the new ear file appear no different than the one generated the day before, not sure what the server doesn't like about it.
    Is there any way to turn on a verbose option for deployment? Any way to tell exactly why the application server doesn't like the ear file?
    Our temporary workaround is to manually unjar the ear and war contents over the previous install.

    Michael,
    Maybe this Web page will help:
    http://www.oracle.com/technology/tech/java/oc4j/htdocs/oc4j-logging-debugging-technote.html
    Also, there are some undocumented debug properties including:
    <ol>
    <li>ApplicationServerDebug=true</li>
    <li>build.debug=true</li>
    </ol>
    Good Luck,
    Avi.

  • Remote creation of MBean deployed in EAR file : loader's ObjectName ??

    I am trying to implement a client which connects to the MBean server
    running in weblogic and then creates an instance of an MBean deployed
    inside an ear file. However, since the class files of the MBean are
    inside the ear file (and NOT in the "serverclasses" directory), it
    looks as if I needed to specify a non-default classloader when calling
    RemoteMBeanServer.createMBean(...).
    --> How can I determine the ObjectName of the correct loader (on
    runtime) ?
    (I am running weblogic 6.1 SP2 on Win2K)
    import javax.naming.Context;
    import javax.management.*;
    import weblogic.jndi.*;
    import weblogic.management.*;
    public class TestClient {
    public static void main(String[] args) {
    String host = "localhost";
    int port = 7001;
    String username = "system";
    String password = "password";
    String serverName = "examplesServer";
    try {
    // get the remote MBean server
    Environment env = new Environment();
    env.setProviderUrl("t3://" + host + ":" + port);
    env.setSecurityPrincipal(username);
    env.setSecurityCredentials(password);
    Context ctx = env.getInitialContext();
    MBeanHome home = (MBeanHome)ctx.lookup(MBeanHome.JNDI_NAME
    + "." + serverName);
    ctx.close();
    RemoteMBeanServer remoteServer =
    (RemoteMBeanServer)home.getMBeanServer();
    // remotely create a new instance of our MBean, deployed
    in an ear file (NOT the "serverclasses" directory !!)
    String domain = "examples";
    String mBeanClassName = "basic.SimpleStandard";
    String mBeanName = mBeanClassName + "_" +
    System.currentTimeMillis();
    ObjectName mBeanObjectName = new ObjectName(domain +
    ":Name=" + mBeanName + ",Type=" + mBeanClassName);
    //ObjectName loaderObjectName = ?? that's my question ??;
    //ObjectInstance mBeanInstance =
    remoteServer.createMBean(mBeanClassName, mBeanObjectName,
    loaderObjectName);
    ObjectInstance mBeanInstance =
    remoteServer.createMBean(mBeanClassName, mBeanObjectName);     // this
    throws "javax.management.ReflectionException: The MBean class could
    not be loaded by the default loader repository"
    } catch (Exception e) {
    e.printStackTrace();

    Atlast it worked. The problem was that in my ejb-jar.xml I was referring to 2_0.dtd. I have changed that to 2.1 and it worked.
    Older ejb-jar.xml had:
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "C:/jboss-4.0.1sp1/docs/dtd/ejb-jar_2_0.dtd">
    I changed that to:
    <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" version="2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
    And it worked.
    -Sathish

  • How to deploy EAR file in Tomcat?

    Is we can deploy ear file in tomcat?
    Normally we can deploy WAR file in tomcat webapps folder. When we run the tomat it will automatically extract the war file.
    But samethink I have tried EAR file. But it is not working.
    Is we can deploy EAR file or not?
    If not plz give reason.

    Hi
    Normally we can deploy the war file thats routene stuff ofcourse ..........but when u deploy ear file it will give problmes as ear structure and war structure are differeant
    The Tomcat Servlet/JSP Container      
    The Apache Tomcat 5.5 Servlet/JSP Container
         Apache Logo
    Links
    * Docs Home
    Contents
    * Contents
    * Introduction
    * Installation
    * Deployment
    * Source Code
    * Processes
    * Example App
    Application Developer's Guide
    Deployment
         Printer Friendly Version
    print-friendly
    version
    Background
    Before describing how to organize your source code directories, it is useful to examine the runtime organization of a web application. Prior to the Servlet API Specification, version 2.2, there was little consistency between server platforms. However, servers that conform to the 2.2 (or later) specification are required to accept a Web Application Archive in a standard format, which is discussed further below.
    A web application is defined as a hierarchy of directories and files in a standard layout. Such a hierarchy can be accessed in its "unpacked" form, where each directory and file exists in the filesystem separately, or in a "packed" form known as a Web ARchive, or WAR file. The former format is more useful during development, while the latter is used when you distribute your application to be installed.
    The top-level directory of your web application hierarchy is also the document root of your application. Here, you will place the HTML files and JSP pages that comprise your application's user interface. When the system administrator deploys your application into a particular server, he or she assigns a context path to your application (a later section of this manual describes deployment on Tomcat). Thus, if the system administrator assigns your application to the context path /catalog, then a request URI referring to /catalog/index.html will retrieve the index.html file from your document root.
    Standard Directory Layout
    To facilitate creation of a Web Application Archive file in the required format, it is convenient to arrange the "executable" files of your web application (that is, the files that Tomcat actually uses when executing your app) in the same organization as required by the WAR format itself. To do this, you will end up with the following contents in your application's "document root" directory:
    * *.html, *.jsp, etc. - The HTML and JSP pages, along with other files that must be visible to the client browser (such as JavaScript, stylesheet files, and images) for your application. In larger applications you may choose to divide these files into a subdirectory hierarchy, but for smaller apps, it is generally much simpler to maintain only a single directory for these files.
    * /WEB-INF/web.xml - The Web Application Deployment Descriptor for your application. This is an XML file describing the servlets and other components that make up your application, along with any initialization parameters and container-managed security constraints that you want the server to enforce for you. This file is discussed in more detail in the following subsection.
    * /WEB-INF/classes/ - This directory contains any Java class files (and associated resources) required for your application, including both servlet and non-servlet classes, that are not combined into JAR files. If your classes are organized into Java packages, you must reflect this in the directory hierarchy under /WEB-INF/classes/. For example, a Java class named com.mycompany.mypackage.MyServlet would need to be stored in a file named /WEB-INF/classes/com/mycompany/mypackage/MyServlet.class.
    * /WEB-INF/lib/ - This directory contains JAR files that contain Java class files (and associated resources) required for your application, such as third party class libraries or JDBC drivers.
    When you install an application into Tomcat (or any other 2.2/2.3-compatible server), the classes in the WEB-INF/classes/ directory, as well as all classes in JAR files found in the WEB-INF/lib/ directory, are made visible to other classes within your particular web application. Thus, if you include all of the required library classes in one of these places (be sure to check licenses for redistribution rights for any third party libraries you utilize), you will simplify the installation of your web application -- no adjustment to the system class path (or installation of global library files in your server) will be necessary.
    Much of this information was extracted from Chapter 9 of the Servlet API Specification, version 2.3, which you should consult for more details.
    Shared Library Files
    Like most servlet containers, Tomcat 5 also supports mechanisms to install library JAR files (or unpacked classes) once, and make them visible to all installed web applications (without having to be included inside the web application itself. The details of how Tomcat locates and shares such classes are described in the Class Loader HOW-TO documentation. For the purposes of our discussion, there are two locations that are commonly used within a Tomcat 5 installation for shared code:
    * $CATALINA_HOME/common/lib - JAR files placed here are visible both to web applications and internal Tomcat code. This is a good place to put JDBC drivers that are required for both your application and internal Tomcat use (such as for a JDBCRealm).
    * $CATALINA_BASE/shared/lib - JAR files placed here are visible to all web applications, but not to internal Tomcat code. This is the right place for shared libraries that are specific to your application.
    Out of the box, a standard Tomcat 5 installation includes a variety of pre-installed shared library files, including:
    * The Servlet 2.4 and JSP 2.0 APIs that are fundamental to writing servlets and JavaServer Pages.
    * An XML Parser compliant with the JAXP (version 1.2) APIs, so your application can perform DOM-based or SAX-based processing of XML documents.
    Web Application Deployment Descriptor
    The description below uses the variable name $CATALINA_HOME to refer to the directory into which you have installed Tomcat 5, and is the base directory against which most relative paths are resolved. However, if you have configured Tomcat 5 for multiple instances by setting a CATALINA_BASE directory, you should use $CATALINA_BASE instead of $CATALINA_HOME for each of these references.
    As mentioned above, the /WEB-INF/web.xml file contains the Web Application Deployment Descriptor for your application. As the filename extension implies, this file is an XML document, and defines everything about your application that a server needs to know (except the context path, which is assigned by the system administrator when the application is deployed).
    The complete syntax and semantics for the deployment descriptor is defined in Chapter 13 of the Servlet API Specification, version 2.3. Over time, it is expected that development tools will be provided that create and edit the deployment descriptor for you. In the meantime, to provide a starting point, a basic web.xml file is provided. This file includes comments that describe the purpose of each included element.
    NOTE - The Servlet Specification includes a Document Type Descriptor (DTD) for the web application deployment descriptor, and Tomcat 5 enforces the rules defined here when processing your application's /WEB-INF/web.xml file. In particular, you must enter your descriptor elements (such as <filter>, <servlet>, and <servlet-mapping> in the order defined by the DTD (see Section 13.3).
    Tomcat Context Descriptor
    The description below uses the variable name $CATALINA_HOME to refer to the directory into which you have installed Tomcat 5, and is the base directory against which most relative paths are resolved. However, if you have configured Tomcat 5 for multiple instances by setting a CATALINA_BASE directory, you should use $CATALINA_BASE instead of $CATALINA_HOME for each of these references.
    A /META-INF/context.xml file can be used to define Tomcat specific configuration options, such as loggers, data sources, session manager configuration and more. This XML file must contain one Context element, which will be considered as if it was the child of the Host element corresponding to the Host to which the The Tomcat configuration documentation contains information on the Context element.
    Deployment With Tomcat 5
    In order to be executed, a web application must be deployed on a servlet container. This is true even during development. We will describe using Tomcat 5 to provide the execution environment. A web application can be deployed in Tomcat by one of the following approaches:
    * Copy unpacked directory hierarchy into a subdirectory in directory $CATALINA_HOME/webapps/. Tomcat will assign a context path to your application based on the subdirectory name you choose. We will use this technique in the build.xml file that we construct, because it is the quickest and easiest approach during development. Be sure to restart Tomcat after installing or updating your application.
    * Copy the web application archive file into directory $CATALINA_HOME/webapps/. When Tomcat is started, it will automatically expand the web application archive file into its unpacked form, and execute the application that way. This approach would typically be used to install an additional application, provided by a third party vendor or by your internal development staff, into an existing Tomcat installation. NOTE - If you use this approach, and wish to update your application later, you must both replace the web application archive file AND delete the expanded directory that Tomcat created, and then restart Tomcat, in order to reflect your changes.
    * Use the Tomcat 5 "Manager" web application to deploy and undeploy web applications. Tomcat 5 includes a web application, deployed by default on context path /manager, that allows you to deploy and undeploy applications on a running Tomcat server without restarting it. See the administrator documentation (TODO: hyperlink) for more information on using the Manager web application.
    * Use "Manager" Ant Tasks In Your Build Script. Tomcat 5 includes a set of custom task definitions for the Ant build tool that allow you to automate the execution of commands to the "Manager" web application. These tasks are used in the Tomcat deployer.
    * Use the Tomcat Deployer. Tomcat 5 includes a packaged tool bundling the Ant tasks, and can be used to automatically precompile JSPs which are part of the web application before deployment to the server.
    Deploying your app on other servlet containers will be specific to each container, but all containers compatible with the Servlet API Specification (version 2.2 or later) are required to accept a web application archive file. Note that other containers are NOT required to accept an unpacked directory structure (as Tomcat does), or to provide mechanisms for shared library files, but these features are commonly available.
    Copyright © 1999-2006, Apache Software Foundation

  • Deploying ear file / Automatic Deployment /AS Deployment

    Hello All,
    i was trying to deploy a ear file of 100 mb in a10.1.3 Server on a specific oc4j instance.
    The error is
    Error initializing site OracleAS Java Web Site: No web-app named 'lib/axis' found in application '--WorkBrain' (found web-modules are: 'workbrain', 'axis')
    As we all know this error message would have been throwed by Server during the process of parsing the application.xml while trying to deploy.
    The entries on META-INF/application.xml are below
    <web>
    <web-uri>workbrain.war</web-uri>
    <context-root>/</context-root>
    </web>
    </module>
    <module id="WebModule_1066144042228">
    <web>
    <web-uri>lib/axis.war</web-uri>
    <context-root>axis</context-root>
    </web>
    The same .ear file was tested on another oc4j instance.
    We tried the Automatic Deployment method (dropping the .ear file in applications dir )
    and restarted the oc4j instance.
    This worked perfectly.
    So what happens in the above two cases..
    Why the Server stops the deployment through the AS console .?
    Why the Server allows the same .ear file through automatic deployment.
    In case if any one needs to refer to automatic deployment .
    http://otndnld.oracle.co.jp/document/products/as10g/101300/B25221_03/web.1013/b14431/autodeploy.htm.
    The .ear file is not corrupted iam able to unzip the file and i verified the presence of lib/axis .
    Please Clarify....
    Regards
    Prem

    Hi Kaladhar,
         See this thread same problem but solved:
    Re: An Deploy Problem about Credentials.
    Regards, Suresh KB

  • Problem While deploying an ear file

    I created a ear file Which has a BeanHello.jar and BeanHello.war and an application.xml. I tried doing it like the petstore application of weblogic6.0. It is deploying on the server , But the internal components of the ear file is not being deployed . Kindly send me one small example.

    We are also having the same problem with our application. And it works OK when
    we deploy the ejb jars and Webapplication(war)separately.
    We think we've followed all the steps in the WebLogic documentation, but same
    as Meena, the internal components of our ear file is not being deployed. And when
    we try to start Weblogic server, it throws the exceptions as below.
    We'll highly appreciate any help. Thanks in advance.
    Ting
    [weblogic.xml.process.XMLProcessingException: Could not locate processor for public
    id = "-//Sun Microsystems,Inc.//DTD J2EE Application 1.2//EN" - with nested exception:
    [weblogic.xml.process.ProcessorFactoryException: Could not locate processor for
    public id = "-//Sun Microsystems,Inc.//DTD J2EE Application 1.2//EN"]
    at weblogic.j2ee.dd.xml.J2EEUtils.loadDeploymentDescriptor(J2EEUtils.java:85)
    at weblogic.j2ee.dd.xml.J2EEUtils.loadDeploymentDescriptor(J2EEUtils.java:67)
    at weblogic.management.mbeans.custom.Application.getDD(Application.java:602)
    at weblogic.management.mbeans.custom.Application.adminLoad(Application.java:499)
    at weblogic.management.mbeans.custom.Application.load(Application.java:310)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:562)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:548)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:285)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:439)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:180)
    at $Proxy6.load(Unknown Source)
    at weblogic.management.mbeans.custom.ApplicationManager.addApplication(ApplicationManager.java:550)
    at weblogic.management.mbeans.custom.ApplicationManager.addApplication(ApplicationManager.java:526)
    at weblogic.management.mbeans.custom.ApplicationManager.poll(ApplicationManager.java:450)
    at weblogic.management.mbeans.custom.ApplicationManager.poll(ApplicationManager.java:402)
    at weblogic.management.mbeans.custom.ApplicationManager.update(ApplicationManager.java:152)
    at weblogic.management.mbeans.custom.ApplicationManager$ApplicationPoller.run(ApplicationManager.java:665)
    "Amirthamurugaraj" <[email protected]> wrote:
    U can take the petstore appplication as an example.
    If everything U did with the creation of ear files and deployment goes
    fine,
    make ur application as the default application and try.
    If that doesn't work for U,make sure the ejb(jar) and Webapplication(war)
    are working when deployed separetly.
    In addition to this,check for any exceptions in the console.
    Reply back on success or any queries..........
    Amirthamurugaraj.
    Meena <[email protected]> wrote in message
    news:[email protected]...
    I created a ear file Which has a BeanHello.jar and BeanHello.war andan
    application.xml. I tried doing it like the petstore application of
    weblogic6.0. It is deploying on the server , But the internal components
    of
    the ear file is not being deployed . Kindly send me one small example.

  • Error Undeploying a EAR File Containing Resource Adapter

    Hi,
    I am trying to undeploy a ear file that contains a
    1) one inbound R.A(resource adapter),
    2) one outbound R.A and
    3) few EJBs.
    The undeploy command "java -jar admin.jar undelpoy..." executes without any error, however the thread process started by the inbound adapter keep running even after undeployment.
    Is there a way to cleanly undeploy a resource adapter (that would delete all the threads created by resource adapter) that's part of a ear file?
    Note: The inbound adapter's deregisterEndpoint method does include the code to call the destroy method on the thread it created.
    Thanks,
    Bhupen

    hello,
    have you tried including the 3rd party jar in your EAR file itself?
    i use a number of external jars in my web app and ejb, including some xml parsing classes. what i did was to put them all in the EAR, at the root level, in other words, not in a sub-directory. then in my WAR's meta-inf/MANIFEST.MF file reference them in the Class-path. do simililar thing for the ejbs if necessary.
    when you tried to use the inqxml instead, did you make a reference in manager/referecen.txt from your app to the inqmy library? if so, did you look into the inqmyxml.jar to see if the Node class is actually there?
    regards,
    wentao

Maybe you are looking for

  • Close dialog with a click outside it

    How can I close a JDialog when the user clicks elsewhere? If it is modal, no mouse events are generated. With a non-modal dialog, I couldn't use FocusListener, the dialog looses focus just after it is made visible. MouseListener didn't worked too, a

  • Exception not caught soalris 8

    hi, I am building my executable on following platform SunOS 5.8 Generic sun4u sparc SUNW,Ultra-Enterprise using following compiler CC: WorkShop Compilers 5.0 98/12/15 C++ 5.0 The problem is when I build the excutable in debug mode i.e by giving -g op

  • Phantom second monitor

    Okay, everything was fine til I thought zapping the PRAM might be a good idea yesterday. Not. Finder icons were intermittently not showing up. (hmmmm... now I wonder if the problem might actually have preceded my "fix.") I'm running 10.3.9 on an upgr

  • Appropriate RMAN Retention Policy

    Hi All, We have enabled ARCHIVELOG on a Production database, and the size allocated for the same is 4GB. There are situations when the archivelog size touches the maximum point, which results in no-connectivity to the database untill we delete old lo

  • Making a contact to a PABX extension

    I have a Lumia 530 for work. I have many contacts that are extensions within various PABX's. I can direct dial to get an internal line and then need to dial the extension - but I don't seem to be able to save the series of numbers (landline then exte