help to speed up out-of-the-box redeployment in JDeveloper

955 views
Skip to first unread message

Jan Vervecken

unread,
Sep 13, 2012, 9:52:56 AM9/13/12
to adf-met...@googlegroups.com
hi

It seems likely that many JDeveloper users would prefer to have redeploys work fast out-of-the-box without having to apply workarounds.

For this, Oracle has bug/ER 12796317, "SPEED UP ADF BC REDEPLOYMENT BY CALLING FORCED SHUTDOWN OF WLS DATASOURCE", filed.
Find more details at http://java.net/jira/browse/ADFEMG-49

Workarounds can be applied, but this is about improving the out-of-the-box behaviour.
Not sure if it will make a difference, but if you leave a comment in JIRA issue ADFEMG-49 maybe the number of responses can help get this fixed.

many thanks
Jan Vervecken

Jan Vervecken

unread,
Sep 30, 2012, 10:44:58 AM9/30/12
to adf-met...@googlegroups.com
hi

Given the lack of response, the idea that many JDeveloper users would prefer to have redeploys work fast out-of-the-box, could be wrong.

It makes me wonder about how easily it is considered normal to have to apply workarounds, instead of expecting things to work better out-of-the-box.

regards
Jan Vervecken

Florin Marcus

unread,
Sep 30, 2012, 11:34:07 AM9/30/12
to adf-met...@googlegroups.com
Hi Jan,

As a JDeveloper user, if I were to choose between a fast and a slow redeployment, I would choose a third option: no redeployment.
We were using for some time WLS Fast Swap, but we are currently evaluating JRebel and after one week of using it, it looks good, so far.
I was able to create new view objects, drop them into pages as ADF components, compile and refresh the page, without restarting the application.
I must say that the compilation tends to become slower after some time.

Thanks,

Florin Marcus



--
You received this message because you are subscribed to the ADF Enterprise Methodology Group (http://groups.google.com/group/adf-methodology). To unsubscribe send email to adf-methodolo...@googlegroups.com
 
All content to the ADF EMG lies under the Creative Commons Attribution 3.0 Unported License (http://creativecommons.org/licenses/by/3.0/). Any content sourced must be attributed back to the ADF EMG with a link to the Google Group (http://groups.google.com/group/adf-methodology).

Jan Vervecken

unread,
Sep 30, 2012, 12:37:35 PM9/30/12
to adf-met...@googlegroups.com
Thanks for your reply Florin Marcus.

Thank you for suggesting another potential workaround to try to improve some of the out-of-the-box behaviour.

regards
Jan Vervecken

Mark Robinson

unread,
Sep 30, 2012, 12:40:05 PM9/30/12
to adf-met...@googlegroups.com
I'll agree with the suggestion of JRebel.  It supports a lot of changes that would cause JDeveloper/WLS to choke.

Mark

Andrejus Baranovskis

unread,
Sep 30, 2012, 1:42:02 PM9/30/12
to adf-met...@googlegroups.com
Hi Jan,

To use JRebel is not a *workaround* :) I would call it rather another approach of building ADF applications.

Andrejus
--
Oracle ACE Director

My Blog - http://andrejusb.blogspot.com/
My JDev/ADF Samples list - http://andrejusb-samples.blogspot.com/

Jan Vervecken

unread,
Sep 30, 2012, 2:46:04 PM9/30/12
to adf-met...@googlegroups.com
Thanks for your reply Andrejus.

Indeed "another approach", but not out-of-the-box.

regards
Jan Vervecken

Shay Shmeltzer

unread,
Sep 30, 2012, 3:43:39 PM9/30/12
to adf-met...@googlegroups.com
In the 11.1.2.* versions we now support hot-swap for ADF applications, which means that you can save-compile-reload in browser for most of your changes without the need for a redeployment.

One thing I'm wondering is whether people are using this new capability, and whether they find it useful as a way to reduce re-deployments?

Shay

Florin Marcus

unread,
Sep 30, 2012, 4:27:57 PM9/30/12
to adf-met...@googlegroups.com
WLS Hot-Swap is definitely a good way of increasing  productivity. This is more obvious in the final phases of a project, when the team focuses more on bug fixing and small improvements. In these phases, developers tend to redeploy more often and redeployments are taking longer because the application is fully featured by now . This is not limited to java files, but can be used with page definitions as well.
It is worth mentioning though, class reloading is working as long as the class signature is not changed. 

Regards,

Vishal Sanganaboina

unread,
Sep 30, 2012, 4:03:08 PM9/30/12
to adf-met...@googlegroups.com
Shay I think you are referring reloading to jspx, jsp pages only and not the java files ?
cheers,
Vishal

hasim

unread,
Oct 1, 2012, 10:23:40 AM10/1/12
to adf-met...@googlegroups.com
I would appreciate , If Andrejus or Florin can post the instruction on how to configure Jrebel on Jdeveeloper.
It seems companies has to be buy license.

Thanks, Hasim

Florin Marcus

unread,
Oct 1, 2012, 11:08:14 AM10/1/12
to adf-met...@googlegroups.com
Hi Hasim,

To configure JRebel with your JDeveloper workpace, you will need to manually create  rebel.xml file. You may find more details here: http://zeroturnaround.com/software/jrebel/how-to-configure-rebel-xml

Additionally, your JVM running  Integrated WLS should use the following configuration:
-noverify -javaagent:C:/jrebel/jrebel.jar -Drebel.adf_core_plugin=true -Drebel.adf_faces_plugin=true

Also, Hot Swap must be turned off when using JRebel.


Regards,

Florin Marcus

Jan Vervecken

unread,
Oct 1, 2012, 2:16:56 PM10/1/12
to adf-met...@googlegroups.com
Thanks for your reply Shay.

The Fast Swap feature, I have not been using it because I don't feel comfortable with the "most of your changes" aspect.

(Note that this discussion was started about speeding up out-of-the-box redeployment in JDeveloper.)

Some related resources:
- discussion "Jdev 11.1.2.0.0 & Hot Swap",
mentions "... it appears for a large app like ours that Fast Swap is D.O.A ..."
at https://groups.google.com/d/topic/adf-methodology/FLa-3aGDYB8/discussion
- by Lucas Jellema, "Hot reloading with JDeveloper 11gR2 – ADF Bindings, ADF BC, JSF/ADF Taskflow Navigation Cases"
mentions "... Am I trying to hot reload the wrong kind of changes? ..."
at http://technology.amis.nl/2011/06/07/hot-reloading-with-jdeveloper-11gr2-adf-bindings-adf-bc-jsfadf-taskflow-navigation-cases/
- document "Oracle JDeveloper and Application Development Framework (ADF) 11g Release 2 Update 1 (11.1.2.1.0)"
has a section "WLS Hot Reload" mentioning some limitations
at http://www.oracle.com/technetwork/developer-tools/jdev/5rn-shermanu1-496572.html#wls
- documentation search result : Your search term "Fast Swap" did not match any topics.
at http://www.oracle.com/pls/as111230/search?word=%22Fast+Swap%22&partno=
and at http://www.oracle.com/pls/as111220/search?word=%22Fast+Swap%22
and at http://www.oracle.com/pls/as111210/search?word=%22Fast+Swap%22

regards
Jan Vervecken

Chad Thompson

unread,
Oct 1, 2012, 2:28:27 PM10/1/12
to adf-met...@googlegroups.com

On Sep 30, 2012, at 9:44 AM, Jan Vervecken <ver...@gmail.com> wrote:

Given the lack of response, the idea that many JDeveloper users would prefer to have redeploys work fast out-of-the-box, could be wrong.

It makes me wonder about how easily it is considered normal to have to apply workarounds, instead of expecting things to work better out-of-the-box.


A couple 'cheats' for speeding up deployment/development:

1)  One is actually not a redeployment issue - but a structural one.  If you have Java classes / domain objects that can be 'separated' for testing, you can speed your development by using Test Driven Development techniques.

2)  WebLogic startup/shutdown can be rather I/O heavy - so… a way to speed up WebLogic startups is to speed up I/O.  I installed a dual SSD/HDD in my MacBook Pro recently - my WebLogic startup times are running from between 10-20 seconds, much better than the restart speeds that I had with the original 5200-rpm stock hard drive in the machine.

- Chad

-- 
Chad Thompson 
chad_t...@mac.com

hasim

unread,
Oct 1, 2012, 11:19:11 AM10/1/12
to adf-met...@googlegroups.com
Sounds Good !, I have to try with Jdeveloper Studio Edition Version 11.1.1.4.0.

Thanks, Hasim

Renan Monteiro de Castro

unread,
Oct 10, 2012, 9:25:51 PM10/10/12
to adf-met...@googlegroups.com
Recently, I was experimenting weblogic startup times with different JDK's and found out that the best time I was able
to reach was around 30 seconds (Core i7 + 4GB) with JDK 1.6.35.
Do you guys get better times? Just for the server instance...

And a note about hot-swap, it does not work with 64-bit JVM's...

Renan Monteiro de Castro - Linkedin

Antonis Antoniou

unread,
Oct 11, 2012, 1:09:55 AM10/11/12
to adf-met...@googlegroups.com

Hi Renan,

As of Weblogic 10.3, a new startup option has been introduced called “skipWLSModule” scanning. By default, on startup, WLST scans the weblogic.jar and all of the classes referenced in its manifest classpath. With this option, files in the modules directory are not scanned. If you need them, you can manually add them to the classpath.

Another trick is to define a cache directory for scanned files. When WLST initializes, it scans all the jar files and writes the information to files in directory called the cachedir. So to reduce WLST startup time, define a cache directory for WLST to use.

Regards

Antonis

 

Antonis Antoniou

Fusion Middleware Expert

 

Cell: +357 99 646140

Email: antonis....@eproseed.com

 

eProseed Europe s.a.

eProseed Belgium s.p.r.l.

eProseed Middle-East Africa s.a.l.

 

Oracle awarded eProseed “ Oracle Middleware Partner of the Year“ 3 times in a row (2010, 2011, 2012) !

Reply all
Reply to author
Forward
0 new messages