WebLogic 10.2 Annotation Override/Deployment Plan Issue

We're migrating applications from WLS 9.2.1 over to 10.2. When we create the deployment plan and configure the overrides we find that some of the web service controls overrides are ignored and the defaults are used.
This was not an issue for 9.2.1 and I've not been able to find any information about this.
Has anyone experienced this before?
Chris

This issue turned out to be a missing target during the ant build process.

Similar Messages

  • Deployment plan issue for JMSApplication rar file deployment

    I have predeployed resource file JmsAdapter with a deployment plan reference. I want to update the Deployment Plan path as I currently don't have any deployment for this resource file deployment. Please suggest how to revert back to the (no plan defined) option. How can I change the value. Please suggest the admin console is pretty picky and mandates on putting a reference to deployment plan. But initially there was no deployment plan and I want to revert to that state again. The WebLogic version is 10.3
    Regards
    Thomas
    Edited by: user5108636 on 8/03/2010 18:40

    This issue turned out to be a missing target during the ant build process.

  • Replacing web.xml values with a deployment plan.  Not working on WL 10.3.2

    Hi All-
    I am trying to replace a value from web.xml with one in a weblogic deployment plan. I deployed the application on WL 10.3.2 and used the deployment plan below. No matter what I do it doesn't seem to want to take the value.
    web.xml:
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <context-param>
    <param-name>TokenGroup</param-name>
    <param-value>oldvalue</param-value>
    </context-param>
    </web-app>
    Deployment Plan:
    <?xml version='1.0' encoding='UTF-8'?>
    <deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd"
    global-variables="false">
    <application-name>APPName</application-name>
    <variable-definition>
    <variable>
    <name>TokenGroup</name>
    <value>Key123456</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>APPName.war</module-name>
    <module-type>war</module-type>
    <module-descriptor external="false">
    <root-element>web-app</root-element>
    <uri>WEB-INF/web.xml</uri>
    <variable-assignment>
    <name>TokenGroup</name>
    <xpath>/web-app/context-param/[param-name="TokenGroup"]/param-value</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    </deployment-plan>
    I've also tried other formats for the xpath such as:
    /web-app/context-param/{param-name="TokenGroup"}/param-value
    /web-app/context-param[param-name="TokenGroup"]/param-value
    Any ideas why this doesnt work?
    Thanks,
    Joe

    "web.xml"
    <?xml version='1.0' encoding='WINDOWS-1252'?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <context-param>
    <param-name>name</param-name>
    <param-value>Joe</param-value>
    </context-param>
    <context-param>
    <param-name>password</param-name>
    <param-value>password</param-value>
    </context-param>
    <servlet>
    <servlet-name>ParameterServlet</servlet-name>
    <servlet-class>ParameterServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>ParameterServlet</servlet-name>
    <url-pattern>/ParameterServlet</url-pattern>
    </servlet-mapping>
    </web-app>
    ParameterServlet
    import java.io.IOException;
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    public class ParameterServlet extends HttpServlet {
    private String dbName = "";
    private String dbPassword = "";
    public void init(ServletConfig config) throws ServletException {
    super.init(config);
    ServletContext context = getServletContext();
    dbName = context.getInitParameter("name");
    dbPassword = context.getInitParameter("password");
    public void doGet(HttpServletRequest req, HttpServletResponse res)
    throws IOException {
    ServletOutputStream out = res.getOutputStream();
    res.setContentType("text/html");
    out.println("<html><head><title>Basic Servlet</title></head>");
    out.println("<body>Database username is <b>" + dbName);
    out.println("</b><br>Database password is <b>" + dbPassword + "</b>");
    out.println("</body></html>");
    "Plan.xml"
    <?xml version='1.0' encoding='UTF-8'?>
    <deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd" global-variables="false">
    <application-name>virtual</application-name>
    <variable-definition>
    <variable>
         <name>name</name>
         <value>akshay1</value>
         </variable>
         <variable>
         <name>password</name>
         <value>koul1</value>
         </variable>
    </variable-definition>
    <module-override>
    <module-name>virtual</module-name>
    <module-type>war</module-type>
    <module-descriptor external="false">
    <root-element>web-app</root-element>
    <uri>WEB-INF/web.xml</uri>
         <variable-assignment>
              <name>name</name>
              <xpath>/web-app/context-param/[param-name="name"]/param-value</xpath>
              <operation>replace</operation>
         </variable-assignment>
         <variable-assignment>
              <name>password</name>
              <xpath>/web-app/context-param/[param-name="password"]/param-value</xpath>
              <operation>replace</operation>
         </variable-assignment>
    </module-descriptor>
    </module-override>
    <config-root>C:\DOCUME~1\user\LOCALS~1\Temp\user\.\config\deployments\virtual\plan</config-root>
    </deployment-plan>
    It works for me... I think your "web.xml" is causing the issue.
    Try replacing
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    with
    <?xml version='1.0' encoding='WINDOWS-1252'?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    Hope this helps.
    -Akshay

  • How do I change the context-root of a web app with a deployment plan?

    I've been trying to figure this out for several hours.
    I'm deploying a .ear file which sets the context root for the single web application it deploys in its application.xml deployment descriptor:
    <application>
    <display-name>MyApp</display-name>
    <module>
    <web>
    <web-uri>MyAppViewControler.war</web-uri>
    <context-root>MyApp</context-root>
    </web>
    </module>
    </application>
    I want to change the context-root from /MyApp to something else when deploying the ear file. It seemed to me that using a deployment plan was the way to do this. But when I use this plan:
    <deployment-plan>
    <application-name>MyApp<application-name>
    <variable-definition>
    <variable>
    <name>NEWCONTEXTROOT</name>
    <value>foobar</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>MyApp</module-name>
    <module-type>ear</module-type>
    <module-descriptor external="false">
    <root-element>application</root-element>
    <uri>META-INF/application.xml</uri>
    <variable-assignment>
    <name>NEWCONTEXTROOT</name>
    <xpath>/application/module/web/context-root</xpath>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    </deployment-plan>
    I get an error:
    weblogic.descriptor.DescriptorException: VALIDATION PROBLEMS WERE FOUND
    /bea/user_projects/domains/devod1/nullplan.xml:0: problem: cvc-complex-type.2.4a: Expected element 'web-uri@http://java.sun.com/xml/ns/javaee' instead of 'context-root@http://java.sun.com/xml/ns/javaee' here in element web@http://java.sun.com/xml/ns/javaee:<nullplan.xml>
    I looked at http://e-docs.bea.com/wls/docs103/pdf/deployment.pdf which says:
    "You cannot use a deployment plan to change the context-root in an application.xml
    file. However, if an application is deployed as a library, you can either change the
    context-root through an weblogic-application.xml file or use the deployment plan
    to change the context-root in an weblogic-application.xml file."
    I don't understand what this means. I'm not deploying my application as a library.
    Does anyone know how to change the context-root for an application?
    Any help would be greatly appreciated!

    Hi James,
    I am quite new to Welogic if i am wrong please correct me.I have re-deployed my application (.war) with this Plan.xml
    &lt;?xml version='1.0' encoding='UTF-8'?&gt;
    &lt;deployment-plan xmlns="http://www.bea.com/ns/weblogic/deployment-plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd" global-variables="false"&gt;
    &lt;application-name&gt;BrowserR08.003&lt;/application-name&gt;
    *&lt;variable-definition&gt;*
    * &lt;variable&gt;*
    * &lt;name&gt;CONTEXTROOT&lt;/name&gt;*
    * &lt;value&gt;BrowserWeb/servlet/BrowserServlet&lt;/value&gt;*
    * &lt;/variable&gt;*
    * &lt;/variable-definition&gt;*
    &lt;module-override&gt;
    &lt;module-name&gt;BrowserWeb.war&lt;/module-name&gt;
    &lt;module-type&gt;war&lt;/module-type&gt;
    &lt;module-descriptor external="true"&gt;
    &lt;root-element&gt;weblogic-web-app&lt;/root-element&gt;
    &lt;uri&gt;WEB-INF/weblogic.xml&lt;/uri&gt;
    &lt;hash-code&gt;1231953167814&lt;/hash-code&gt;
    *&lt;variable-assignment&gt;*
    * &lt;name&gt;CONTEXTROOT&lt;/name&gt;*
    * &lt;xpath&gt;/weblogic-web-app/context-root&lt;/xpath&gt;*
    * &lt;operation&gt;add&lt;/operation&gt;*
    * &lt;/variable-assignment&gt;*
    &lt;/module-descriptor&gt;
    &lt;module-descriptor external="false"&gt;
    &lt;root-element&gt;web-app&lt;/root-element&gt;
    &lt;uri&gt;WEB-INF/web.xml&lt;/uri&gt;
    &lt;/module-descriptor&gt;
    &lt;module-descriptor external="true"&gt;
    &lt;root-element&gt;wldf-resource&lt;/root-element&gt;
    &lt;uri&gt;META-INF/weblogic-diagnostics.xml&lt;/uri&gt;
    &lt;/module-descriptor&gt;
    &lt;/module-override&gt;
    &lt;config-root&gt;/export/home1/tecapp/BrowserR08.003/plan&lt;/config-root&gt;
    &lt;/deployment-plan&gt;
    I do not know wether i will require the other module descriptor definition in this Plzn.xml. Now when I go to following link.
    Deployments --&gt; MyApp --&gt; Testing
    It gives me following url as a test page:
    http://localhost:7001/BrowserWeb/servlet/BrowserServlet
    as soon as i click on to the above link it redirects me to following.
    http://localhost:7001/BrowserWeb/servlet/BrowserServlet/servlet/BrowserServlet
    Same if i remove these context-root part my normal Testing menu shows me following link as my webapp access path
    http://localhost:7001/BrowserWeb &lt;-- My war file name is BrowserWeb.war so it is default name of my deployed application if i am not wrong
    and as soon as i click on above link it redirects me to the following one.
    http://localhost:7001/BrowserWeb/servlet/BrowserServlet
    It means application server know that my full web access page is with '*servlet/BrowserServlet*' because its adding it in both the cases.
    What I want is a constant URL whcih does not change?
    Hope this helps :)

  • Q: Changing login-config with a deployment plan

    Hi everybody,
    I have an application for which the developer sets the login-config in web.xml as follows:
    <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>Sec_Con-Realm</realm-name>
    </login-config>
    But I need it to be
    <login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>myrealm</realm-name>
    </login-config>
    So I defined a deployment plan like this:
    <?xml version='1.0' encoding='UTF-8'?>
    <deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd">
    <application-name>AppTest</application-name>
    <variable-definition>
    <variable>
         <name>LoginConfig_AuthMethod</name>
         <value>CLIENT-CERT</value>
    </variable>
    <variable>
         <name>LoginConfig_RealmName</name>
         <value>myrealm</value>
    </variable>
         </variable-definition>
    <module-override>
    <module-name>AppTest.ear</module-name>
    <module-type>ear</module-type>
    <module-descriptor external="true">
    <root-element>weblogic-application</root-element>
    <uri>META-INF/weblogic-application.xml</uri>
    </module-descriptor>
    <module-descriptor external="false">
    <root-element>application</root-element>
    <uri>META-INF/application.xml</uri>
    </module-descriptor>
    <module-descriptor external="true">
    <root-element>wldf-resource</root-element>
    <uri>META-INF/weblogic-diagnostics.xml</uri>
    </module-descriptor>
    </module-override>
    <module-override>
    <module-name>AppTest.war</module-name>
    <module-type>war</module-type>
    <module-descriptor external="true">
    <root-element>weblogic-web-app</root-element>
    <uri>WEB-INF/weblogic.xml</uri>
    </module-descriptor>
    <module-descriptor external="false">
    <root-element>web-app</root-element>
    <uri>WEB-INF/web.xml</uri>
    <variable-assignment>
         <name>LoginConfig_AuthMethod</name>
              <xpath>/web-app/login-config/auth-method</xpath>
              <operation>replace</operation>
         </variable-assignment>
    <variable-assignment>
         <name>LoginConfig_RealmName</name>
              <xpath>/web-app/login-config/realm-name</xpath>
              <operation>replace</operation>
         </variable-assignment>
    </module-descriptor>
    </module-override>
    </deployment-plan>
    But apparently my deployment plan doesn't work. If I set web.xml manually to have CLIENT-CERT/myrealm the application works. When I leave it at BASIC/Sec_Con-Realm it doesn't and asks to enter user/passwd. It seams as if the deployment plan were ignored. I don't get any errors or such, just the wrong behavior.
    I use this WLST clause to deploy the EAR:
    deploy('AppTest', 'dist/AppTest.ear', targets='node4', planPath='config/plan.xml', timeout=600)
    The target WLS version is 10.3.4. Any clues?
    Regards
    Slawo.

    Ivan, I don't know if this will work or not, but if you look at Edwin's example here http://biemond.blogspot.com/2009/04/using-weblogic-deployment-plan-to.html he uses the following syntax xpath so that you know which context-param needs to be replaced:
    <variable-assignment>
    <name>org.mytests.env</name>
    <xpath>/web-app/context-param/[param-name="org.mytests.env"]/param-value</xpath>
    <operation>replace</operation>
    </variable-assignment>
    Give that a shot

  • Weblogic deployment plan will not override variables (Weblogic 10.3.5).

    I am having some trouble trying to adjust the deployment settings of our application in weblogic. I feel what I'm trying to do ought to be quite simple, but it's not working as expected.
    I am just trying to override the context-root in weblogic.xml and the JNDI name for the data source, so these can both be configured at deployment time.
    I have removed the application.xml from the ear file, so that shouldn't be affecting the overrides.
    What I have so far:
    weblogic.xml:
    <?xml version='1.0' encoding='UTF-8'?>
    <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd">
    <context-root>mosaic</context-root>
    <resource-description>
    <res-ref-name>jdbc/LogicalDS</res-ref-name>
    <jndi-name>LogicalDS</jndi-name>
    </resource-description>
    web.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <resource-ref>
    <description>A logical reference to the datasource - mapped in deployment plan</description>
    <res-ref-name>jdbc/LogicalDS</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>
    plan.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <wls:deployment-plan xmlns:wls="http://xmlns.oracle.com/weblogic/deployment-plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/j2ee_1_4.xsd" global-variables="true">
    <!--weblogic-version:10.3.5-->
    <wls:application-name>mosaic.ear</wls:application-name>
    <wls:variable-definition>
    <wls:variable>
    <wls:name>datasource_name</wls:name>
    <wls:value xsi:nil="true"></wls:value>
    <wls:description>The name of the datasource to map to the mosaic application</wls:description>
    </wls:variable>
    <wls:variable>
    <wls:name>new_context_root</wls:name>
    <wls:value xsi:nil="true"></wls:value>
    <wls:description>URL to deploy Mosaic at</wls:description>
    </wls:variable>
    </wls:variable-definition>
    <wls:module-override>
    <wls:module-name>mosaic.war</wls:module-name>
    <wls:module-type>war</wls:module-type>
    <wls:module-descriptor>
    <wls:root-element>weblogic-web-app</wls:root-element>
    <wls:uri>WEB-INF/weblogic.xml</wls:uri>
    <wls:variable-assignment>
    <wls:name>new_context_root</wls:name>
    <wls:xpath>/weblogic-web-app/context-root</wls:xpath>
    <wls:operation>replace</wls:operation>
    </wls:variable-assignment>
    <wls:variable-assignment>
    <wls:description>Data source for mosaic application</wls:description>
    <wls:name>datasource_name</wls:name>
    <wls:xpath>/weblogic-web-app/resource-env-description/resource-env-ref-name</wls:xpath>
    <wls:operation>replace</wls:operation>
    </wls:variable-assignment>
    <wls:variable-assignment>
    <wls:name>datasource_name</wls:name>
    <wls:xpath>/weblogic-web-app/resource-description/[res-ref-name="jdbc/LogicalDS"]/jndi-name</wls:xpath>
    <wls:operation>replace</wls:operation>
    </wls:variable-assignment>
    </wls:module-descriptor>
    </wls:module-override>
    </wls:deployment-plan>
    Nothing happens when I use the deployment plan, and neither of the variables appear under the Deployment Plan configuration screens in the admin console. From what I understand, I should at least be asked for these variables, since I have specified that they are null in the deployment plan.
    When I use WLST to browse the tree, I find that the runtime configuration just stays as the values in the deployment descriptors.
    I have verified the deployment plan is being used in the general tab of the admin console.
    Can anyone help me find out what I am doing wrong here? If I don't create a data source called LogicalDS, I get errors about this, suggesting it is not correctly overriding. I am puzzled to why I do not see any variables to specify though..

    The documentation implies that this is not the case - see:
    http://docs.oracle.com/cd/E24329_01/web.1211/e24443/export.htm#autoId13
    'Assigning Null Variables to Require Administrator Input'.
    However, require administrator input where? My thoughts were that this option would appear in the admin console under 'deployment plan'. However, although I have specified resource dependencies in the deployment descriptors, and the plan, nothing appears under 'resource dependencies' for the application.
    Is the only way to change the context-root deployment URL by actually manually editing an XML file?
    To me that seems primitive and will cause us support issues when distributing our application - is there any other way I can enable the ability to specify the data source name and context-root through the web console prior to/during deployment?
    Edited by: user12032953 on 11-Jun-2012 07:20

  • Overriding spring configuration in J2EE deployment plan?

    I would like some suggestions on how to solve this problem:
    Background:
    We are developing an application with a web interface and a couple of EJB's, which will be deployed on WebLogic 9.2. We are using Spring 1.2.8. We are using a ContextSingletonBeanfactoryLocator to have a shared application context between the web app and the EJB's.
    We have some configuration values (server names, URLs, directories etc), which we would like to modify at deployment time, depending on the environment (local/dev/test/uat/prod). However, we definitely do not want to build different .ear files for each environment.
    The problem:
    The normal way to do this (when not using spring) is to place these in a deployment descriptor (e.g. web.xml or ejb-jar.xml) and then override them with a deployment plan at deployment time. But a deployment plan cannot override values in an arbitrary file (such as applicationContext.xml)
    Approach A:
    I use a PropertyPlaceholderConfigurer or similar to load an "c:\myapp.environment.properties" file, which was placed in the filesystem outside of the ear, and which was different in all environments. This is simple to implement, but in a distributed environment with many servers and many applications, it will be a pain to maintain this file.
    Approach B:
    Much like approach A, but put the property file in a separate application library and load it from the classpath. Then maintain a different version of this app library for each environment. This makes it simpler to ensure it's deployed to all managed servers - but it's a bit more complicated to maintain.
    Approach C:
    Use an extended ContextLoaderListener servlet so that it automatically deployed a PropertyPlaceholderConfigurer bean which expanded all context-params. E.g.
    <pre>
    <!-- web.xml -->
    <context-param>
    <param-name>remoteServerName</param-name>
    <param-value>myRemoteServerInDev</param-value>
    </context-param>
    <context-param>
    <param-name>fileDirectory</param-name>
    <param-value>c:\files</param-value>
    </context-param>
    <listener>
    <listener-class>
    dk.pfa.ConfiguringContextLoaderListener
    </listener-class>
    </listener>
    </pre>
    In my applicationContext.xml, I would then have <property name="serverName" value="${remoteServerName}"/>
    For production, I could override the web.xml in the deployment plan to set remoteServerName to "prodRemoteServer".
    The problem is that I cannot be sure that this servlet actually gets to configure the shared application context - an EJB may initialise first.
    I could put similar logic in each and every EJB, using <env-entry> in ejb-jar.xml instead of <context-param> in web.xml. This seems to invite trouble, since I would then have to ensure that the deployment plan had overridden values for all these entries as well .
    Finally I have the option of making an application lifecycle listener class - but that cannot access the web.xml, ejb-jar.xml or any other deployment-plan-overridable files, where I can put user-defined values .
    So what is the best practice? Or just a reasonable approach?
    Surely, I cannot be the first to face this problem, but if somebody has solved it, they forgot to mention it to Google

    I would vote for A or B

  • Deployment plan fails for weblogic-ejb-jar.xml

    FILE FOR PLAN TO ACT ON:
    application.ear\ReferenceTableSession.jar\META-INF\weblogic-ejb-jar.xml
    <?xml version="1.0" encoding="utf-8"?>
    <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/10.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>referencetablesession</ejb-name>
    <stateless-session-descriptor>
    <pool>
    <max-beans-in-free-pool>100</max-beans-in-free-pool>
    <initial-beans-in-free-pool>0</initial-beans-in-free-pool>
    </pool>
    <stateless-clustering>
    <stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
    </stateless-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>150</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>true</enable-call-by-reference>
    <jndi-name>XYZ_ejb/ProviderMaintSvc/referencetablesession</jndi-name>
    </weblogic-enterprise-bean>
    <transaction-isolation>
    <isolation-level>TransactionReadCommitted</isolation-level>
    <method>
    <ejb-name>referencetablesession</ejb-name>
    <method-name>*</method-name>
    </method>
    </transaction-isolation>
    </weblogic-ejb-jar>
    DEPLOYMENT PLAN:
    <?xml version='1.0' encoding='utf-8'?>
    <deployment-plan xmlns="http://www.bea.com/ns/weblogic/deployment-plan"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd">
    <application-name>application.ear</application-name>
    <variable-definition>
    <variable>
    <name>VAR_referencetablesession</name>
    <value>ejb/ProviderClaimOnlineSvc/referencetablesession</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ReferenceTableSession.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="false">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>META-INF/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>VAR_referencetablesession</name>
         <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="referencetablesession"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    <config-root>servers/AdminServer/upload</config-root>
    </deployment-plan>
    ERROR FROM CONSOLE:
    Message icon - Error An error occurred during activation of changes, please see the log for details.
    Message icon - Error Exception preparing module: EJBModule(ReferenceTableSession.jar) [EJB:011023]An error occurred while reading the deployment descriptor. The error was: Unmarshaller failed.
    Message icon - Error Bean already exists: "[email protected]f2(/WeblogicEnterpriseBeans[referencetablesession])"
    ERROR FROM LOG:
    <Oct 2, 2009 1:08:25 PM CDT> <Error> <J2EE> <BEA-160197> <Unable to load descriptor servers/ms34/tmp/_WL_user/ProviderClaimOnlineSvc/y1anoa/ReferenceTableSession.jar/META-INF/weblogic-ejb-jar.xml of module ReferenceTableSession.jar. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:152)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.mergeDescriptorBeanWithPlan(AbstractDescriptorLoader2.java:703)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:776)
    at weblogic.ejb.spi.EjbJarDescriptor.parseWeblogicEjbJarBean(EjbJarDescriptor.java:160)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWLEjbJarXMLWithSchema(EjbDescriptorReaderImpl.java:719)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.parseWLDD(EjbDescriptorReaderImpl.java:541)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWeblogicEjbJarXML(EjbDescriptorReaderImpl.java:380)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:191)
    at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:93)
    at weblogic.ejb.container.deployer.EJBModule.loadEJBDescriptor(EJBModule.java:1198)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:380)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:16)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:155)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.createAndPrepareContainer(RedeployOperation.java:98)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.doPrepare(RedeployOperation.java:122)
    Thanks,
    Rob
    Edited by: user11337024 on Oct 5, 2009 2:31 PM

    FILE FOR PLAN TO ACT ON:
    application.ear\ReferenceTableSession.jar\META-INF\weblogic-ejb-jar.xml
    <?xml version="1.0" encoding="utf-8"?>
    <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/10.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>referencetablesession</ejb-name>
    <stateless-session-descriptor>
    <pool>
    <max-beans-in-free-pool>100</max-beans-in-free-pool>
    <initial-beans-in-free-pool>0</initial-beans-in-free-pool>
    </pool>
    <stateless-clustering>
    <stateless-bean-is-clusterable>true</stateless-bean-is-clusterable>
    </stateless-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>150</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>true</enable-call-by-reference>
    <jndi-name>XYZ_ejb/ProviderMaintSvc/referencetablesession</jndi-name>
    </weblogic-enterprise-bean>
    <transaction-isolation>
    <isolation-level>TransactionReadCommitted</isolation-level>
    <method>
    <ejb-name>referencetablesession</ejb-name>
    <method-name>*</method-name>
    </method>
    </transaction-isolation>
    </weblogic-ejb-jar>
    DEPLOYMENT PLAN:
    <?xml version='1.0' encoding='utf-8'?>
    <deployment-plan xmlns="http://www.bea.com/ns/weblogic/deployment-plan"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd">
    <application-name>application.ear</application-name>
    <variable-definition>
    <variable>
    <name>VAR_referencetablesession</name>
    <value>ejb/ProviderClaimOnlineSvc/referencetablesession</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ReferenceTableSession.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="false">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>META-INF/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>VAR_referencetablesession</name>
         <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="referencetablesession"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    <config-root>servers/AdminServer/upload</config-root>
    </deployment-plan>
    ERROR FROM CONSOLE:
    Message icon - Error An error occurred during activation of changes, please see the log for details.
    Message icon - Error Exception preparing module: EJBModule(ReferenceTableSession.jar) [EJB:011023]An error occurred while reading the deployment descriptor. The error was: Unmarshaller failed.
    Message icon - Error Bean already exists: "[email protected]f2(/WeblogicEnterpriseBeans[referencetablesession])"
    ERROR FROM LOG:
    <Oct 2, 2009 1:08:25 PM CDT> <Error> <J2EE> <BEA-160197> <Unable to load descriptor servers/ms34/tmp/_WL_user/ProviderClaimOnlineSvc/y1anoa/ReferenceTableSession.jar/META-INF/weblogic-ejb-jar.xml of module ReferenceTableSession.jar. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:152)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.mergeDescriptorBeanWithPlan(AbstractDescriptorLoader2.java:703)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:776)
    at weblogic.ejb.spi.EjbJarDescriptor.parseWeblogicEjbJarBean(EjbJarDescriptor.java:160)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWLEjbJarXMLWithSchema(EjbDescriptorReaderImpl.java:719)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.parseWLDD(EjbDescriptorReaderImpl.java:541)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWeblogicEjbJarXML(EjbDescriptorReaderImpl.java:380)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:191)
    at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:93)
    at weblogic.ejb.container.deployer.EJBModule.loadEJBDescriptor(EJBModule.java:1198)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:380)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:16)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:155)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.createAndPrepareContainer(RedeployOperation.java:98)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.doPrepare(RedeployOperation.java:122)
    Thanks,
    Rob
    Edited by: user11337024 on Oct 5, 2009 2:31 PM

  • Weblogic 10.3 - changing jndi-name with deployment plan fails

    I was trying to alter the global jndi name of a stateless ejb by using a deployment plan, but can't get it to work.
    - to be able to replace it later on with a deployment plan, I specify a jndi-name in weblogic-ejb-jar.xml (so I do not use the @mappedName)
    e.g.
    <?xml version="1.0" encoding="UTF-8"?>
    <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/10.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
         <weblogic-enterprise-bean>
              <ejb-name>ExampleService</ejb-name>
              <enable-call-by-reference>true</enable-call-by-reference>
              <stateless-session-descriptor>
                   <business-interface-jndi-name-map>
                        <business-remote>com.example.ExampleServiceRemote</business-remote>
                        <jndi-name>com.example.ExampleService#com.example.ExampleServiceRemote</jndi-name>
                   </business-interface-jndi-name-map>
              </stateless-session-descriptor>
         </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    - during deployment I specify a deploymentPlan with following content:
    <variable-definition>
    <variable>
    <name>ejb_jndiname_ExampleService</name>
    <value>ExampleService</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ExampleService.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="true">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>meta-inf/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>ejb_jndiname_ExampleService</name>
    <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="ExampleService"\]/stateless-session-descriptor/business-interface-jndi-name-map/\[business-remote="com.example.ExampleServiceRemote"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    - after deployment, the original jndi-name ("com.example.ExampleService#com.example.ExampleServiceRemote") is active in the jndi tree instead of "ExampleService"
    p.s. When I specified the jndi-name in weblogic-ejb.jar.xml as
         <weblogic-enterprise-bean>
              <ejb-name>ExampleService</ejb-name>
              <enable-call-by-reference>true</enable-call-by-reference>
              <jndi-name>com.example.ExampleService#com.example.ExampleServiceRemote</jndi-name>
         </weblogic-enterprise-bean>
    and the replace in the deployment plan as
    <variable-assignment>
    <name>ejb_jndiname_SecurityService</name>
    <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="ExampleService"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    the replacement does work (checked by verifying the jndi-name within the deployed ear using the console), but the problem then is that the jndi-name does not appear in the jndi tree (that's why I tried the <business-interface-jndi-name-map>)
    Any ideas?
    Kind regards,
    Ben
    Edited by: user11230128 on 4-jun-2009 7:42

    After a Service Request and some trial and error, I got it to work after adding the following part in each 'jar module override' section of the deployment plan:
    <module-descriptor external="false">
    <root-element>ejb-jar</root-element>
    <uri>META-INF/ejb-jar.xml</uri>
    </module-descriptor>
    Apparantly this is needed even though there is no ejb-jar.xml in the jar.
    So the deployment plan has to be something like:
    <variable-definition>
    <variable>
    <name>ejb_jndiname_ExampleService</name>
    <value>ExampleService</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ExampleService.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="false">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>meta-inf/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>ejb_jndiname_ExampleService</name>
    <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/[ejb-name="ExampleService"]/stateless-session-descriptor/business-interface-jndi-name-map/[business-remote="com.example.ExampleServiceRemote"]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    <module-descriptor external="false">
    <root-element>ejb-jar</root-element>
    <uri>META-INF/ejb-jar.xml</uri>
    </module-descriptor>
    </module-override>
    ...

  • Deployment Plan / weblogic-ejb-jar.xml:  Problem

    Hello,
    I am trying to use a deployment plan to override the principal name in the weblogic-ejb-jar.xml.
    The deployment-plan looks like this (showing only the important sections)
    <variable-definition>
    <variable>
    <name>SecurityRoleAssignment_ejbRole_PrincipalNames_1</name>
    <value>MY PRINCIPAL 1</value>
    </variable>
    </variable-definition>
    <variable-assignment>
    <name>SecurityRoleAssignment_ejbRole_PrincipalNames_1</name>
    <xpath>/weblogic-ejb-jar/security-role-assignment/[role-name="View-Role"]/externally-defined</xpath>
    <operation>replace</operation>
    </variable-assignment>
    The security-role assignment in the weblogic-ejb-jar.xml looks like this:
    <security-role-assignment>
    <role-name>View-Role</role-name>
         <externally-defined/>
    </security-role-assignment>
    I 've tried to override the element-value of <externally-defined> (a valid tag in the weblogic-ejb-jar.xml ) with help of a deployment-plan.
    When trying to deploy my application (which is organised in the directory-structure: inst_dir/APP inst_dir/PLAN
    the following error occurs:
    VALIDATION PROBLEMS WERE FOUND problem: cvc-complex-type.2.4a: Expected element 'principal-name@http://www.bea.com/ns/weblogic/10.0' instead of 'externally-defined@http://www.bea.com/ns/weblogic/10.0' here in element security-role-assignment@http://www.bea.com/ns/weblogic/10.0:
    This has surprised me, as externally-defined is (according to the documentation) a valid tag.
    I have tried to replace <externally-defined> with an empty <principal-name> tag (which works fine when deploying the application), but causes a security exception, when trying to use the EJB.
    Has anybody an idea if there is a workaround for this problem?
    IMHO the Validatio Problem is not justified at this place then why should an otherwise valid weblogic-ejb-jar.xml (when not using a deployment-plan) suddenly become invalid when a deployment plan is used?
    Thanx a lot in advance!
    Edited by: user10672779 on 02.12.2008 04:09

    Hi again,
    I tried it with the weblogic 10 Namespace Declaration but got then this error:
    failed to load java type corresponding to e=weblogic-ejb-jar@http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd
    and following Exception:
    <02.12.2008 20.00 Uhr CET> <Error> <J2EE> <BEA-160197> <Unable to load descriptor D:\exportapps\tb.ear\app\tb_flowcontrol.jar/META-INF/weblogic-ejb-jar.xml of module tb_flowcontrol.jar. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:152)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:292)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:260)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:774)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:395)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:745)
    Caused by: com.bea.xml.XmlException: failed to load java type corresponding to e=weblogic-ejb-jar@http://www.bea.com/ns/weblogic/weblogic-ejb-jar/1.0/weblogic-ejb-jar.xsd
    at com.bea.staxb.runtime.internal.UnmarshalResult.getPojoBindingType(UnmarshalResult.java:329)
    at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:296)
    at com.bea.staxb.runtime.internal.UnmarshalResult.determineTypeForGlobalElement(UnmarshalResult.java:306)
    at com.bea.staxb.runtime.internal.UnmarshalResult.determineRootType(UnmarshalResult.java:287)
    at com.bea.staxb.runtime.internal.UnmarshalResult.unmarshalDocument(UnmarshalResult.java:153)
    at com.bea.staxb.runtime.internal.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:65)
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:141)
    Searching the net couldn't supply me with another answer as to use the 90 Namespace Declaration again...
    I think I forgot to mention I am using an exploded directory.
    This all seems very strange.
    cheers.

  • Errors when Automatically Deploying Planning into WebLogic 9.1

    Dears,
    I have installed Planning 9.3.1 on the Solaris OS.(SPARC 64-bit)
    But when I want to deploy Planning into WebLogic 9.1 automatically. It has failed to deploy application "HyperionPlanning".
    Please let me know if anyone has some ideas.
    Thanks for your help.
    Sophia

    Hi,
    Is planning supported on 64bit SPARC ?
    You may have to manually deploy planning into weblogic.
    Sorry I can't help further.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • How to edit deployment plan through Administration Console in weblogic 9.0?

    hi,<br>
    <p>I need to edit the deployment plan through console. But i'm not able to do so.Everytime i upload an ear file and tired to edit the environment variables or deployment plan through console it gives the message</p>
    <b>"This module is defined with DTD based descriptors and cannot be edited using the console. "</b><br>
    <p>I have been manually editing the deployment plan file so far.<br>
    In earlier versions of weblogic , there was an option to edit the environmental variables. Does weblogic 9.0 support the same? <br>
    I'm not able to find a solution soo far.<br>
    Please guide me. <br></p>
    Thanks<br>
    Smita

    Hi.
    I'm experiencing the same problem, using Weblogic 9.1.
    I have an ear file that contains a war file.
    Previously, the files were in servlet api 2.3 format (with a DTD). I used the DDConverter tool to update the files, and now I can use the console to change parameters for the web application, but I still can't change paramters for the main application: "This module is defined with DTD based descriptors and cannot be edited using the console.".
    Here is the content of the META-INF/application.xml contained in mey ear file:
    <?xml version='1.0' encoding='utf-8'?>
    <application xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.4">
    <description>Application xxx</description>
    <display-name>xxx</display-name>
    <module>
    <web>
    <web-uri>xxx.war</web-uri>
    <context-root>xxx</context-root>
    </web>
    </module>
    </application>
    Thank you very much for your help.

  • Can a Deployment Plan Modify Values in a .properties file?

    I'm using JDeveloper 11.1.1.6.0 and Weblogic 10.3
    I am currently in the process of creating a plan.xml file for our application, but we have a few properties files that contain configuration information. This information needs to change depending on the environment that we are deploying to. Is it possible to do this through a plan.xml or would we have to use some other method?
    Example:
    File: conf.properties
    ------start file-----
    A=1
    B=2
    C=3
    -----end file-----
    We would need to be able to change the value of B to be 5 instead of 2 if we are deploying to our test environment.

    As far as I can tell, what you linked is just using the deployment plan's XPath to update a value in the web.xml which is standard procedure. However, I am curious of being able to update values in a .properties file which is not an XML file, and thus can't be read by XPath. Is this possible or can the deployment plans only modify XML documents?
    [EDIT] From what I've been finding it seems I've confirmed that it can only override XML files, or atleast I've found no indications that it can do anything other than XML files. Though now I'm having issues of it overriding custom XML files. EG: I have a wf_client_config.xml file in the WAR's class path that I need to update depending on the environment, but have not been able to have the deployments recognize the override that I have listed in the plan.xml.
    So I guess now my question is, do I ened to do anything special to get it to recognize an XML file on the class path vs a standard xml file such as web.xml? Or should I make this a new topic?
    Edited by: mBaldwin on Jan 8, 2013 11:45 AM
    [EDIT 2] Marking this as resolved, it appears as though the plan.xml will only modify settings that could be modified by Weblogic naturally and it is not able to modify items that are on the classpath of the application.
    Edited by: mBaldwin on Feb 26, 2013 12:08 PM

  • Cluster environment with Deployment Plan losing variable values

    Hi all,
    Our environment uses Weblogic Server 10.2, with 2 Managed Servers in Cluster, in Feisty Fawn Ubuntu.
    Our app has a bunch of variables configured in the web.xml with custom values, most of which are endpoint and JDBC related. Our web.xml has some default values in these variables, and we created a Deployment Plan to change these values in deployment-time.
    The problem is that, after a random amount of time, the cluster is "losing" these configurations. At first, everything goes fine, but then, we start receiving errors because the endpoint being used is not the Deployment Plan's anymore, but the one from web.xml. It's completely random, and come and go without notice.
    Is there a known bug about this? Is this a configuration issue?
    Any help would be appreciated!
    Thanks,
    Francisco

    Are you redeploying the applications at all?
    Francisco Cavedon wrote:
    Hi all,
    Our environment uses Weblogic Server 10.2, with 2 Managed Servers in Cluster, in Feisty Fawn Ubuntu.
    Our app has a bunch of variables configured in the web.xml with custom values, most of which are endpoint and JDBC related. Our web.xml has some default values in these variables, and we created a Deployment Plan to change these values in deployment-time.
    The problem is that, after a random amount of time, the cluster is "losing" these configurations. At first, everything goes fine, but then, we start receiving errors because the endpoint being used is not the Deployment Plan's anymore, but the one from web.xml. It's completely random, and come and go without notice.
    Is there a known bug about this? Is this a configuration issue?
    Any help would be appreciated!
    Thanks,
    Francisco

  • Using deployment plan to change virtual directory mapping

    Hi all,
    Have anyone tried this before?
    I have a deployment plan to add virtual directory to my weblogic descriptors as follow:
    Inside <variable-definitions> tag:
    <variable>
          <name>LocalPath</name>
          <value>C:/</value>
        </variable>
        <variable>
          <name>VirtualPath</name>
          <value>/Temp/*</value>
        </variable> Then in to add the virtual directory to weblogic.xml:
    <module-descriptor external="false">
          <root-element>weblogic-web-app</root-element>
          <uri>WEB-INF/weblogic.xml</uri>
          <variable-assignment>
             <name>LocalPath</name>
             <xpath>/weblogic-web-app/virtual-directory-mapping/local-path</xpath>
          </variable-assignment>
          <variable-assignment>
             <name>VirtualPath</name>
             <xpath>/weblogic-web-app/virtual-directory-mapping/url-pattern</xpath>
             <operation>add</operation>
          </variable-assignment>
        </module-descriptor>But I have this error:
    Error VALIDATION PROBLEMS WERE FOUND C:\Users\Napoleon\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\upload\ReviewApp\app\planplan.xml:0: problem: cvc-complex-type.2.4c: Expected element 'url-pattern@http://xmlns.oracle.com/weblogic/weblogic-web-app' before the end of the content in element virtual-directory-mapping@http://xmlns.oracle.com/weblogic/weblogic-web-app:<C:\Users\Napoleon\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\upload\ReviewApp\app\planplan.xml>
    I also tried using the xpath for url-pattern as followed:
    <xpath>/weblogic-web-app/virtual-directory-mapping/[local-path="C:/"]/url-pattern</xpath>
    But I have the same error. The <url-patter> element is not added correctly to the virtual directory mapping tag.
    It is supposed to work. Anyone has done this before ? or is this a bug of deployment plan.
    Thank you very much.
    Regards
    K.

    Hi Jay,
    I have looked at your link and modified my plan.xml accordingly ( the original plan is automatically generated by weblogic ). But I still get the same error. Could you have a look and tell me what's wrong?
    <?xml version='1.0' encoding='UTF-8'?>
    <deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd">
      <application-name>app</application-name>
      <variable-definition>
        <variable>
          <name>SessionDescriptor_timeoutSecs_12786382366650</name>
          <value>3601</value>
        </variable>
        <variable>
        <name>firstNode</name>
        <value></value>
        </variable>
        <variable>
          <name>LocalPath</name>
          <value>C:\</value>
        </variable>
        <variable>
          <name>VirtualPath</name>
          <value>/Temp/*</value>
        </variable>
      </variable-definition>
      <module-override>
        <module-name>ReviewApp.ear</module-name>
        <module-type>ear</module-type>
        <module-descriptor external="false">
          <root-element>weblogic-application</root-element>
          <uri>META-INF/weblogic-application.xml</uri>
          <variable-assignment>
            <name>SessionDescriptor_timeoutSecs_12786382366650</name>
            <xpath>/weblogic-application/session-descriptor/timeout-secs</xpath>
          </variable-assignment>
        </module-descriptor>
        <module-descriptor external="false">
          <root-element>application</root-element>
          <uri>META-INF/application.xml</uri>
        </module-descriptor>
        <module-descriptor external="true">
          <root-element>wldf-resource</root-element>
          <uri>META-INF/weblogic-diagnostics.xml</uri>
        </module-descriptor>
      </module-override>
      <module-override>
        <module-name>ReviewUI.war</module-name>
        <module-type>war</module-type>
        <module-descriptor external="false">
          <root-element>weblogic-web-app</root-element>
          <uri>WEB-INF/weblogic.xml</uri>
          <variable-assignment>
            <name>firstNode</name>
            <xpath>/weblogic-web-app/virtual-directory-mapping</xpath>
            <operation>add</operation>
          </variable-assignment>
          <variable-assignment>
             <name>LocalPath</name>
             <xpath>/weblogic-web-app/virtual-directory-mapping/local-path</xpath>
             <operation>add</operation>
          </variable-assignment>
          <variable-assignment>
             <name>VirtualPath</name>
             <xpath>/weblogic-web-app/virtual-directory-mapping/[local-path="C:\"]/url-pattern</xpath>
             <operation>add</operation>
          </variable-assignment>
        </module-descriptor>
        <module-descriptor external="false">
          <root-element>web-app</root-element>
          <uri>WEB-INF/web.xml</uri>
        </module-descriptor>
      </module-override>
      <config-root>C:\Users\Napoleon\AppData\Roaming\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\servers\DefaultServer\upload\ReviewApp\app\plan</config-root>
    </deployment-plan>

Maybe you are looking for

  • How to exchange one image for another with a click

    I am brand new to actionscript, so bear with me! I need to create an interactive web-based system which takes the user through steps to assemble something. One of the pages will have images of the tools needed. I want the user to be able to 'tick' of

  • CD/DVD Drive no longer reading discs

    HP Pavilion g6-1b50us Notebook PC Windows 7 64-bit I've only had my laptop about a month and a half. To transfer items from my old laptop to the new one, I used the CD/DVD drive to copy items over. It worked beautifully at that time. Tonight, I went

  • XML Messages in "Scheduled" status

    Hi all, The case is at ERP side running transaction SXMB_MONI, some XML messages from XI to ERP are found in "Scheduled" status.  Around the same time, siimilar messages using same receiver interface are processed successfully.  When we manual restar

  • JSF 1.0 Final - no backing bean validation of empty imputs

    Hi, I have simple inputText with validator in backing bean : <h:inputText id="layName" maxlength="30" value="#{shp.layerName}" validator="#{shp.validate}"/> and validator is executed properly when inputText isn't empty, but when is empty it isn't !.

  • Managing Large iMovie Projects

    I am working on a project that will be about 45 min.  I am currently at 12.5 minutes and already have TONS of media - hundreds of pictures, multiple short video clips, music and sound clips.  I don't want to lose it in the making.  Here are my questi