Partial Redeployment
I'm using wls 8.1. I'm deploying an exploded EAR containing EJB modules and web
apps. Can I redeploy only the classes loaded by the EJB classloader, or does
the entire application have to be reloaded? If so, how? What partial redeployment
options are available when the deployed module is an EAR? Thanks...
..Brian
"Brian" <[email protected]> wrote:
>
Rob Woollen <[email protected]> wrote:
You'll need to add the <enable-bean-class-redeploy> tag to your
weblogic.ejb-jar.xml
http://e-docs.bea.com/wls/docs81/ejb/reference.html#1431359
Then you redeploy by specifying the class that was updated. Something
like this:
java weblogic.Deployer -username system -password gumby1234 -redeploy
-name beanimpl ejb/com/acme/ejb/HelloWorldEJB.class
This updates the application beanimpl with a new version of my
HelloWorldEJB class. You just specify the path relative to the topof
the EAR.
-- Rob
Brian wrote:
I'm using wls 8.1. I'm deploying an exploded EAR containing EJB modulesand web
apps. Can I redeploy only the classes loaded by the EJB classloader,or does
the entire application have to be reloaded? If so, how? What partialredeployment
options are available when the deployed module is an EAR? Thanks...
..Brian
Thanks Rob. You've been a great help. One more question; If I use
manifest
classpath to cause a utility JAR to be loaded by the EJB classloader,
will I need
to reload the entire application to refresh it?
Also, the EJB jar file has to be exploded in order to update the implementation
class, right? I can't seem to update or replace an unexploded EJB JAR.
Similar Messages
-
Partial redeployment of archived app
Hello.
So, as in subj:
What I have: deployed war on weblogic, with a single jsp inside
What I want: to redeploy only that jsp without redeploying entire war.
When I try to use partial redeployment task with deltaFiles specified, I get DeploymentException: A partial update of an archived application is not allowed.
It is fully described here
http://download.oracle.com/docs/cd/E11035_01/wls100/messages/DeployerRuntime.html
But
I wonder if there is some walkaround of this situation, maybe somebody has done smth similar.
Thanks in advanceHi Frf,
You can partially deploy some part of your applications on the Server like following: http://jaysensharma.wordpress.com/2010/02/08/redeploying-a-single-jsp/
In your ANT Task you can write then following to update new resources (Classes) in your WAR ...:
<target name=”reBuildWAR”>
<font color=maroon>
<war destfile=”YourWarArchieve.war” update=”true”>
<classes dir="dest/"/>
</war>
</font>
</target>
To Change the Library of your App:
<target name=”reBuildWAR”>
<font color=maroon>
<war destfile=”YourWarArchieve.war” update=”true”>
<lib dir="someLocation/jars">
<exclude name="ojdbc14.jar"/>
</lib>
</war>
</font>
</target>
To Change the JSPs of your App:
<target name="reBuildWAR">
<font color=maroon>
<war destfile="${war.name}" update=”true”>
<fileset dir="${jsps}"/>
</war>
</font>
</target>
.Thanks
Jay SenSharma -
Partial redeployment problem for J2EE module update
hi, all
I have one application file (.ear) composed of three EJB modules. I tried to paritally redeploy one of them, but it didn't work.
Here is the command-line for partial redeployment: java weblogic.Deployer -adminurl t3://XX.XX.XX.XX:XXXX -username XXXX -password XXXX -name XA_MOrderEAR -source XAMOrderEAR -targets MOrderBM.jar@SquadA_N1 -redeploy, where XAMOrderEAR is the name of the exploded archive, MOrderBM.jar is the EJB module to be partially redeployed, SquadA_N1 is a cluster.
Here is the result:
<2010/2/22 下午02時10分06秒 GMT+08:00> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating redeploy operation for appl
ication, XA_MOrderEAR [archive: null], to SquadA_N1 .>
Task 29 initiated: [Deployer:149026]redeploy application XA_MOrderEAR on SquadA_N1.
Task 29 failed: [Deployer:149026]redeploy application XA_MOrderEAR on SquadA_N1.
Target state: redeploy failed on Cluster SquadA_N1
weblogic.application.CannotRedeployException: Module 'MOrderBM.jar' has the same ClassLoader as the Application 'XA_MOrd
erEAR'. Consider redeploying the entire application.
Please tell me how to solve the problem. I tried to set enable-bean-class-redeploy to true in weblogic-ejb-jar.xml. It didn't work too.
thanks
Blithe MengHiya
You can debug this quite easily yourself.
Enable the SQL Trace for that session and see the Last SQL in the raw trace file.
You can also run the trace with the option to view bind variables.
This way you can find out why the SQL is returning no_data_found
thanks
anil passi -
Partial redeploy of an application ear fails intermittently
Hi,
I am trying to redeploy my application ear using deployment API provided by weblogic. The list of files which i try to redeploy are couple of jars and couple of wars one at a time. The problem is most of the times the deployment paritally goes through informing me that weblogic has transitioned application status from activated at last. But in some cases i see "<b>javax.management.InstanceAlreadyExistsException"</b> though the application is already present. Why does this happen where in the handle to ApplicationMBean tries to register the application as though it was new which is not the case. Check the exception below.
javax.management.InstanceAlreadyExistsException: vgndomain:Location=VgnVCMServer,Name=VgnVCMServer_VgnContentSvcs,ServerRuntime=VgnVCMServer,Type=ApplicationRuntime
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:2371)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:876)
at weblogic.management.internal.RemoteMBeanServerImpl.private_registerMBean(RemoteMBeanServerImpl.java:582)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanServerImpl.java:524)
at weblogic.management.runtime.RuntimeMBeanDelegate.register(RuntimeMBeanDelegate.java:166)
at weblogic.management.runtime.RuntimeMBeanDelegate.<init>(RuntimeMBeanDelegate.java:122)
at weblogic.management.runtime.RuntimeMBeanDelegate.<init>(RuntimeMBeanDelegate.java:85)
at weblogic.management.runtime.RuntimeMBeanDelegate.<init>(RuntimeMBeanDelegate.java:62)
at weblogic.management.runtime.RuntimeMBeanDelegate.<init>(RuntimeMBeanDelegate.java:74)
at weblogic.j2ee.J2EEApplicationRuntimeMBeanImpl.<init>(J2EEApplicationRuntimeMBeanImpl.java:42)
at weblogic.j2ee.J2EEApplicationContainer.initRuntimeMBean(J2EEApplicationContainer.java:781)
at weblogic.j2ee.J2EEApplicationContainer.<init>(J2EEApplicationContainer.java:448)
at weblogic.j2ee.J2EEApplicationContainerFactory.createApplicationContainer(J2EEApplicationContainerFactory.java:131)
at weblogic.j2ee.J2EEApplicationContainerFactory.getOrCreateApplicationContainer(J2EEApplicationContainerFactory.java:113)
at weblogic.management.deploy.slave.SlaveDeployer$Application.getContainer(SlaveDeployer.java:3011)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2550)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Any help on this would be appreciated.
Thanks,
SandeepThe info for the 149080 error is included below:
Basically, you can only do a partial redeploy if you are using an exploded directory app.
Error: A partial update of an archived application is not allowed. Application app cannot be redeployed.
Description
There was an attempt to partially redeploy an archived application. Partial redeployment of an archived application is not allowed.
Cause
There was an attempt to partially redeploy an archived application
Action
Try deploying entire application
Refer to the deployment documentation for more info.
http://download.oracle.com/docs/cd/E11035_01/wls100/deployment/redeploy.html#wp1031505
8.1.2.2 Partial Redeployment of J2EE Modules
Partial redeployment also enables you to redeploy a single module or subset of
modules in a deployed Enterprise Application. Again, partial deployment is
supported only for applications that are deployed using an exploded archive directory. -
Partial redeployment of a static jar file with weblogic.Deployer
Hello,
We are working on an application serving jar files to customers, via Java Web Start, hence that are considered from our point of view as static files, like our HTML and Javascript pages.
Moreover, we have one jar that changes regularly, so every time it's loaded on the server we need to do a partial redeployment of this jar file, as documented here: http://docs.oracle.com/cd/E13222_01/wls/docs103/deployment/redeploy.html#wp1025739
However, it does not work, as I believe WebLogic doesn't consider my jar file as a static file.
C:\>java -cp weblogic.jar weblogic.Deployer -adminurl http://mymachine:7001 -user weblogic -password mystrongpassword -name myapp -redeploy launcher/downloadme.jar
weblogic.Deployer invoked with options: -adminurl http://mymachine:7001 -user weblogic -name myapp -redeploy launcher/downloadme.jar
<Mar 8, 2013 7:09:36 PM CET> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating redeploy operation for application, myapp [archive: null], to configured targets.>
Task 24 initiated: [Deployer:149026]redeploy application myapp [Version=7] on WebServer.
Task 24 failed: [Deployer:149026]redeploy application myapp [Version=7] on WebServer.
Target state: redeploy failed on Server WebServer
weblogic.management.DeploymentException:
The application myapp#7 cannot have the resource launcher/downloadme.jar updated dynamically. Either:
1.) The resource does not exist.
or
2) The resource cannot be changed dynamically.
Please ensure the resource uri is correct, and redeploy the entire application for this change to take effect.
As a side note, if I rename downloadme.jar to downloadme.jar.*html*, then WebLogic agrees to redeploy it!
Is there any way to force the static redeployment of my jar file?
Thanks and regards,
JulienHi,
The feature you are trying to use works only when web application is deployed in exploded format. Is your app deployed in exploded format?
Also jars are never considered static, so I doubt this will work here.
As an alternative you can go for Oracle Weblogic Production redployment feature. Refer to - http://middlewaresupport.wordpress.com/2013/03/21/production-redeployment-feature-in-weblogic/
Thanks,
Ranjan
Edited by: Ranjan K on Apr 12, 2013 5:45 AM -
Partial redeployment in exploded EAR gets blown away on restart
I have an exploded EAR with an (exploded) WAR and a JSP inside the WAR. On the filesystem it looks like this:
/.../foo.ear/blah.war/my.jsp
The EAR was initially deployed in stage mode, then I switched to nostage. my.jsp is still under development and continues to change. I wrote a simple script that has two steps: 1) copy my.jsp from /some/dir to /.../foo.ear/blah.war/ 2) do a partial deployment/update with weblogic.Deployer -targets <cluster> -name foo -redeploy blah.war/my.jsp .
The cluster is WL 10.3.3 in Production mode. I start the managed server, run the script that deploys changed JSPs and test the app. Everything is good. Then I restart the managed server...and my changed JSP is no longer there. I have to run the script again in order to make the managed server update the JSP.
I can't run the deploy script on every server restart. What am I missing here?No one here is going to do anything about it. Send feedback to Apple.
http://www.apple.com/feedback/ipad.html
Basic troubleshooting steps.
17" 2.2GHz i7 Quad-Core MacBook Pro 8G RAM 750G HD + OCZ Vertex 3 SSD Boot HD -
Redeployment hangs forever on weblogic 8.1 SP1
When i do a partial redeployment of application ear, intermittenly i see that redeployment hangs forever and does not finish. There are no errors reported during this time.
Any suggestions?
Thanks,
SandeepThanks for the reply. The points you mentioned do not apply at my end. To add more to this problem detail i noticed in logs that weblogic notifications were through namely "preparing,prepared,activating,activated", but important to note that DeploymentTaskRuntimeMBean.isRunning() is still true and notifications state that deployment was complete which is contradictory.
Can anybody provide some ideas on this?
Thanks,
Sandeep -
Java weblogic.Deployer -redeploy
I want to understand more about "java weblogic.Deployer -redeploy", for example
if I have a update in one of the portlet code so do I need to create a package
whole 'ear' or only portlet code?I'd suggest posting in the portal newsgroup.
-- Rob
Om Bachu wrote:
Basically I want to do a "partial redeployment" the article (http://edocs.bea.com/wlp/docs81/deploy/deploy.html#1003607)
didn't much help...
regards
:o)m
"Om Bachu" <[email protected]> wrote:
I want to understand more about "java weblogic.Deployer -redeploy", for
example
if I have a update in one of the portlet code so do I need to create
a package
whole 'ear' or only portlet code? -
Weblogic 7 web app redeployment
I have weblogic 7 sp2 running on win2000. Application is EAR portal
application with web application.
I am trying to redeploy only web application. It works from console
but recompilation of classes or touching REDEPOY file doe not work.
To make it more interesting, if I touch REDEPLOY in META-INF directory
of the EAR weblogic redeploy entire application....
Could you give me any suggestions? Thanks.
D.There is an on-going discussion within BEA about partial redeployment of an EAR.
I would call 888.232.7878 (BEA support) and ask them for the latest efforts in
this area.
Hope this helps,
pat
[email protected] (Du) wrote:
I have weblogic 7 sp2 running on win2000. Application is EAR portal
application with web application.
I am trying to redeploy only web application. It works from console
but recompilation of classes or touching REDEPOY file doe not work.
To make it more interesting, if I touch REDEPLOY in META-INF directory
of the EAR weblogic redeploy entire application....
Could you give me any suggestions? Thanks.
D. -
We I want to re-deploy a jsp using weblogic.Deployer at once it runs ok.
The sentence is:
weblogic.Deployer -adminurl http://$ADM_URL -user $WLS_USER -password $WLS_PWD
-name $APP_NAME -verbose -debug -activate login_NTEC.jsp
but when I re-deploy the same jsp again I have the follow error:
####<22-mar-04 18:09:23 CET> <Info> <HTTP> <pardillo.com> <scdsrv_pardillo> <ExecuteThread:
'9' for queue: 'default'> <
kernel identity> <> <101047> <[ServletContext(id=4745801,name=SW200Web,context-path=/sacom)]
Generated java file: /home/prwl2081/con
fig/prmc2081w7/scdsrv_pardillo/.wlnotdelete/scdsrv_pardillo_sacom_SW200Web/jsp_servlet/__login_sc.java>
####<22-mar-04 18:11:07 CET> <Error> <Management> <pardillo.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defa
ult'> <kernel identity> <> <141008> <Error preparing application component login_NTEC.jsp
of application prmc2081w7:Location=scdsrv_
pardillo,Name=sacom,Type=ApplicationConfig: java.io.FileNotFoundException: Response:
'500: Internal Server Error' for url: 'http://c
l1_prwl2081:30201/wl_management_internal2/wl_management' ((localPath: java.io.FileNotFoundException:
Response: '500: Internal Server
Error' for url: 'http://cl1_prwl2081:30201/wl_management_internal2/wl_management')>
####<22-mar-04 18:11:07 CET> <Error> <Deployer> <pardillo.caixapenedes.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defaul
t'> <kernel identity> <> <149206> <The Slave Deployer failed to stage the component
login_NTEC.jsp of the application sacom.>
####<22-mar-04 18:11:09 CET> <Error> <Deployer> <pardillo.caixapenedes.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defaul
t'> <kernel identity> <> <149201> <The Slave Deployer failed to complete the deployment
task with id 2 for the application sacom.>
weblogic.management.DeploymentException: The Slave Deployer failed to stage the
component login_NTEC.jsp of the application sacom.
at weblogic.management.deploy.slave.SlaveDeployer.getApplicationInputStream(SlaveDeployer.java:2082)
at weblogic.management.deploy.slave.SlaveDeployer.stageApplicationFromData(SlaveDeployer.java:1924)
at weblogic.management.deploy.slave.SlaveDeployer.stageApplicationFromData(SlaveDeployer.java:1747)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:1055)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:764)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:234)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:210)
Please, I need help.
Thans a lot.
SantiYour syntax doesn't looke correct. If you're trying to update just a
JSP file, it should be something like this. (type java
weblogic.Deployer -examples on 8.1 to see this)
Partially redeploy, for example, to update a JSP in a exploded webapp:
java weblogic.Deployer -adminurl url -username username -password
password -name myapp -redeploy mywar/index.jsp
The path of JSP to be updated is relative to the root of the
application. If a directory is specified the entire subtree is
updated.
-- Rob
Santi wrote:
We I want to re-deploy a jsp using weblogic.Deployer at once it runs ok.
The sentence is:
weblogic.Deployer -adminurl http://$ADM_URL -user $WLS_USER -password $WLS_PWD
-name $APP_NAME -verbose -debug -activate login_NTEC.jsp
but when I re-deploy the same jsp again I have the follow error:
####<22-mar-04 18:09:23 CET> <Info> <HTTP> <pardillo.com> <scdsrv_pardillo> <ExecuteThread:
'9' for queue: 'default'> <
kernel identity> <> <101047> <[ServletContext(id=4745801,name=SW200Web,context-path=/sacom)]
Generated java file: /home/prwl2081/con
fig/prmc2081w7/scdsrv_pardillo/.wlnotdelete/scdsrv_pardillo_sacom_SW200Web/jsp_servlet/__login_sc.java>
####<22-mar-04 18:11:07 CET> <Error> <Management> <pardillo.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defa
ult'> <kernel identity> <> <141008> <Error preparing application component login_NTEC.jsp
of application prmc2081w7:Location=scdsrv_
pardillo,Name=sacom,Type=ApplicationConfig: java.io.FileNotFoundException: Response:
'500: Internal Server Error' for url: 'http://c
l1_prwl2081:30201/wl_management_internal2/wl_management' ((localPath: java.io.FileNotFoundException:
Response: '500: Internal Server
Error' for url: 'http://cl1_prwl2081:30201/wl_management_internal2/wl_management')>
####<22-mar-04 18:11:07 CET> <Error> <Deployer> <pardillo.caixapenedes.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defaul
t'> <kernel identity> <> <149206> <The Slave Deployer failed to stage the component
login_NTEC.jsp of the application sacom.>
####<22-mar-04 18:11:09 CET> <Error> <Deployer> <pardillo.caixapenedes.com> <scdsrv_pardillo>
<ExecuteThread: '9' for queue: 'defaul
t'> <kernel identity> <> <149201> <The Slave Deployer failed to complete the deployment
task with id 2 for the application sacom.>
weblogic.management.DeploymentException: The Slave Deployer failed to stage the
component login_NTEC.jsp of the application sacom.
at weblogic.management.deploy.slave.SlaveDeployer.getApplicationInputStream(SlaveDeployer.java:2082)
at weblogic.management.deploy.slave.SlaveDeployer.stageApplicationFromData(SlaveDeployer.java:1924)
at weblogic.management.deploy.slave.SlaveDeployer.stageApplicationFromData(SlaveDeployer.java:1747)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:1055)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:764)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:234)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:210)
Please, I need help.
Thans a lot.
Santi -
EJB business model architecture + packaging
Hello,
During a development of large Web applications (ERP for example), how to organize the business model (EJB) tier?
I thought of centralizing the business model of the entire application within only one (ejb) module whose each Web module would depend there. What do you think ?
Then, how to package it ? All the modules (Web and business) in the same ear? It would be simplest but not the ideal solution. Because for each update I have to redeploy the entire application.
Thank you.Thanks for your help mr_jaber.
I would like just to know what is the best way to package and deploy large application to the application server.
Is better to use a single ejb-jar module who contain all buisness logic or split the buisness tier in multiple ejb-jar ?
I know there is the admin_client.jar utility who allows incremental or partial redeployment of EJB modules within an application running in an OC4J instance. This is fine..
So.. I have to put all my modules in a ear archive or is better to deploy Web and EJB modules in standalone mode ? -
Hi, BEA portal gurus,
I have several questions about Portal web application deployment.
1. If I try to manually deploy a new portal web application(not using the
wizard hot deployment), it seems that I have to take the following steps to
make it work. First in the console, I need to modify the application
descriptor and add a new web module. Second, I need to undeploy the whole
enterprise application and redeploly the whole application. Is there any
other easier way to do it? The redeployment of the whole application takes a
long time.
2. In http://edocs.bea.com/wls/docs70/webapp/deployment.html#139318, it
explains a lot about web application deployment in weblogic server. In the
secion "reploying a web application in exploded directory format", it says:
****You can redeploy a Web Application deployed in exploded directory format
when using auto-deployment by modifying a special file called REDEPLOY, or
you can use the Administration Console, or you can cause a partial redeploy
by copying a new version of a class file over an old in the WEB-INF/classes
directory.*****
I am more confused than I was before I read this document. I think the first
approach --- modify the REDEPLOY is not necessary, because when I modify a
jsp or html in my portal web application, the server can pick it up right
away. Of course, I change the jsp check interval setting. Besides, I never
get the third appoach to work. Whenever I modify the classes and copy it to
the WEB-INF/classes, the server can not do auto-redeployment for me. I have
to restart the server, or redeploy the web application module in the console
to make it work.
Can anyone explain it to me? Thanks a lot in advance.
Surge.Hi Kathleen,
Please check message server settings on
<u><i>visual admin tool:</i></u><b>server->kernel->cluster manager</b> and check <b>ms.host</b> and <b>ms.port</b> values from the table. At my first try, I thought the port number was 50000 since it was J2EE message port, after checking it in visual admin tool I realized that, it was the same port you use for local which was 3601.
If this is still not working either then do it manually as follows:
Copy your applicationName.ear file into your sever. The directory that you can find the .ear file is <b>C:\documents and settings\admin\documents\SAP\workspace\filename.ear</b>
**Start your visual admin tool
server->services->deploy
on the right hand side you will see <b>server</b>->webdynpro
***On the right panel click on <b>deploy&start</b>
I hope this will work for you,and please do not forget reward points if I could help you a little.
Cheers,
Serkan -
Hi,
I am looking into the weblogic documentation here where it says:
http://e-docs.bea.com/wls/docs81/webapp/deployment.html#158848
"You can redeploy a Web application deployed in exploded directory format when using auto-deployment by modifying a special file called REDEPLOY. You can also cause a partial redeploy by copying a new version of a class file over an old in the WEB-INF/classes directory."
The last statement regarding partial redeploy by copying a new version of classfile, Does weblogic poll for changes in classfile timestamps?
If so, what attribute would control this?
(I am referring to regular java class (not servlet-reloadxxx))
Thanks,
VijayHi,
Yes this is possible in WLW8.1Sp2.
Few things to consider for the exploded directory structure to work
1) The top level directory should always be named with a .ear extension
For ex: if you applicatio name is sampleApp
then the toplevel directory should be "sampleApp.ear"
2) You could either create an ear and just unzip it in the production environment
thereby preserving the extension
or
3) You could build the application and copy it into production environment and
rename the top level directory with a .ear extension. Just make sure you don't
have any project folders in your application folder which is not part of the application.
The need for the directory to have a ".ear" is a requirement with the way Workshop
is designed as of now.
Let me know if you have further questions.
Thanks a lot,
Vimala
"garbl" <[email protected]> wrote:
>
Hy ,
id there a way to build a deployable ear in exploded format fully compatible
with
ear standards? I mean creating a true ear structure (no split directory
!) without
archiving everything in an .ear?
We need being able to keep an exploded structure in prod environment
in order
to be able to keep on using app configuration via property / xml files
thanks -
HELP!! ClassCastException with custom module classloader hierarchy and redeployment
Hi,
I am defining custom module classloader hierarchy to avoid redeploying of the
entire application mainly because we have so many EJBs and it takes a long time
to deploy the entire app. I deploy my app using the exploded directory, add a
new method to an EJB in my dal.jar, redeploy, run my unittest and I get ClassCastException.
I am using weblogic.Deployer utility to reploy my module using "-targets dal.jar@accsserver"
argument. I even tried undeploying that module and redeploy again with no luck.
here is weblogic-application.xml definition of the custom class loader
<classloader-structure>
<module-ref>
<module-uri>floghmi.war</module-uri>
</module-ref>
<module-ref>
<module-uri>cts.jar</module-uri>
</module-ref>
<module-ref>
<module-uri>fdbs.jar</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>dml.jar</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>dal.jar</module-uri>
</module-ref>
</classloader-structure>
</classloader-structure>
</classloader-structure>
thanks,
NasrinRob,
regarding your question on redeploying the whole app without the classloader
structure, yes, that works fine. If I change a class and redeploy the whole app,
things are ok. However, when I speocify the classloader structure, and try to
redeploy the dal.jar, I get ClassClasException.
You are right about dml.jar being in a separate classloader. I have changed my
structure after I posted my question to load dml.jar from the application classloader.
So Rob, is there a bug in Weblogic 8.1 that causes this exception?
please let me know, I am anxiously waiting your response.
thanks,
Nasrin
Rob Woollen <[email protected]> wrote:
>
>
Nasrin Azordegan wrote:
Rob,
if I remove my classloader structure from weblogic-application.xml,I get an
error during redeployment, saying "You must include all of<list ofmy module names
here> in your files list to modify <dal.jar>. Yes, the server enforces constraints on partial redeployments. You must
deploy all the modules in a given classloader and any modules in child
classloaders.
Just to make sure, if you initially deploy your app, or redeploy the
whole thing, it works fine without the classloader-structure, right?
The problem I am trying to solve is to minimize our deployment time.Our application
has over 700 CMP 2.0 entity beans and 200 session beans. Our applicationdeployment
follows the J2EE layer architecture. The data mapping layer which consistof 700
entity beans are located in dml.jar. The data access layer which consistof 200
session beans are located in dal.jar. We create our ear with thesetwo jar files
plus some other framework jars and deploy on bea weblogic 8.1 SP2 andthat takes
about an hour. I need to be able to modify a session bean, i.e. changethe implementation
of a session bean or add a new method to a session bean interface andredeploy
only data access layer, the dal.jar, not the entity beans. This explainswhy you
see dml.jar in a classloader with a child classloader that loads dal.jar.
I included the ClassCastException from weblogic server console below.What is
happening is that I have a session bean with 6 methods that just doesa println.
I deploy my session bean, ExerciseSessionBeanFactory, and run my unittest that
invokes test1 through test6 methods. I modify my bean to add "test7"method and
redeply dal.jar successfully. I run my unit test that invokes test1through test7
methods and then I get a ClassCastException.
I hope this helps. Please let me know if you need more details.If you push dml.jar into a subloader, that means you can change dml.jar
without touching anything in the parent loader. However, it also means
that you've isolated it's classes and other modules can't see them.
-- Rob
thanks,
Nasrin
in test method
in test2 method
in test3 method
in test4 method
in test5 method
in test6 method
<Apr 12, 2004 9:26:03 AM PDT> <Warning> <EJB> <BEA-010096> <The Message-Driven
EJB: SimTimeListener is unable to connect
to the JMS destination: cn=t.cms.cts.simTimeInfo. Connection failedafter 184
attempts. The MDB will attempt to reconne
ct every 10 seconds. This log message will repeat every 600 secondsuntil the
condition clears.>
<Apr 12, 2004 9:26:03 AM PDT> <Warning> <EJB> <BEA-010061> <The Message-Driven
EJB: SimTimeListener is unable to connect
to the JMS destination: cn=t.cms.cts.simTimeInfo. The Error was:
[EJB:011011]The Message-Driven EJB attempted to connect to the JMSdestination
with the JNDI name: cn=t.cms.cts.simTimeI
nfo. However, the object with the JNDI name: cn=t.cms.cts.simTimeInfois not a
JMS destination, or the destination found
was of the wrong type (Topic or Queue).>
in test method
in test2 method
in test3 method
in test4 method
in test5 method
in test6 method
<Apr 12, 2004 9:28:26 AM PDT> <Warning> <RMI> <BEA-080003> <RuntimeExceptionthrown
by rmi server: com.trs.cv.infr.istr.
sc.sim.factory.ejb.ExerciseSessionFactory_zhotso_EOImpl.test7()
java.lang.ClassCastException.
java.lang.ClassCastException
at com.trs.cv.infr.istr.sc.sim.factory.ejb.ExerciseSessionFactory_zhotso_EOImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:108)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:353)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Rob Woollen <[email protected]> wrote:
You'll have to give me some more information on the ClassCastException.
Where does it happen? Print out the classnames and the
classloaders of the 2 objects.
Does everything work fine if you remove your classloader-structure?
-- Rob
Nasrin Azordegan wrote:
Hi,
I am defining custom module classloader hierarchy to avoid redeployingof the
entire application mainly because we have so many EJBs and it takesa long time
to deploy the entire app. I deploy my app using the exploded directory,add a
new method to an EJB in my dal.jar, redeploy, run my unittest and
I
get ClassCastException.
I am using weblogic.Deployer utility to reploy my module using "-targetsdal.jar@accsserver"
argument. I even tried undeploying that module and redeploy again
with
no luck.
here is weblogic-application.xml definition of the custom class loader
<classloader-structure>
<module-ref>
<module-uri>floghmi.war</module-uri>
</module-ref>
<module-ref>
<module-uri>cts.jar</module-uri>
</module-ref>
<module-ref>
<module-uri>fdbs.jar</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>dml.jar</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>dal.jar</module-uri>
</module-ref>
</classloader-structure>
</classloader-structure>
</classloader-structure>
thanks,
Nasrin -
Partial delivery per item in sales order and ATP - schedule lines
Hi,
I've problem regarding ATP- schedule lines and partial delivery flag.
In sales order there is flag Partial delivery per item B / 1 . That means create only one delivery even with quant 0. That comes from customer master or customer info-record and it is OK.
Please look at next example.
Customer requires:
10 PCS of materail A on date X. Only 5 PCS are available on date X.
10 PCS of material B on date X 0 PCS are available on date X, 10 PCS are available on date Y.
So if we create outbound delivery on date X it will contain only 5 PCS of material A. No successive deliveries will be created for material A because of the flag B/1. That item is closed.
Problem is with material B.
The sales order will be open because of material B and on date Y we can easily create another delivery with 10 PCS of mat B.
That is wrong. Agreement with customer is only one delivery for ALL items in sales order. If we create delivery on date X it should contain only materials which are available on date X and sales order should close.
Do you know how to fix this problem?Hi,
I've think you didn't understand my requirement. I allways get schedule lines but they are confirmed on different dates.
Example in same sales order we have:
Schedule line for item A:
DATE X confirmed quantity 10
Schedule line for an item B.
DATE X confirmed quanitity 0 (zeroe)
DATE Y confirmed quantity 10.
I would like to create outbond delivery on date X with:
item A quantity 10
item B quantity 0.
And if that hapens than B/0 rule will work or reference customzing that you suggested before. So order will be closed because all items are processed or referenced once.
Do you know how to do that?
Regards
Maybe you are looking for
-
Preview no longer imports pdfs into each other.
Last year I could add pdf documents together in Preview to make a compilation that was much easier to print in booklet form as it avoided blank pages. Some time this year the behaviour changed, and now when I drag one open pdf onto the window of anot
-
Only display image if filename in database
Hi, I'm trying to write the code to only display an image if there is a file name in the database for the image (i.e. if there is no image for the item, no image tags are written to the page etc) Heres what I have: <code> <% Dim bookImage bookImage =
-
i have made a MYSQL_ECMA.dll (using sql_ecma.dll) but when i create that ECMA it is unable to create get_schemafrom my sql Database=test table=HR public Schema GetSchema(KeyedCollection<string, ConfigParameter> configParameters) Microsoft.Metadirecto
-
SAP guru's:- I watched one of issue for the solution in this website:- Here run the APP use the T-code 110, completed up to document generated and entered, now select the print tab, when they select print tab it is getting "print job schedule
-
Online Indexing in SQL Server 2005 in SAP
Hi SDN, I had a requirment where i need to create a index in SQLPLUS. please let me know the transaction code where we will create index in SAP with SQLPLUS. i need to create index with code like this. create index z03 on AFRU (fileds) online = ON. p