Re: [JBoss-dev] Developing with JBoss
On 2001.11.22 02:34:39 -0500 Jason Dillon wrote: This makes alot of sence, would it be hard to augment the deployer in such a fashion as to make the window smaller? --jason I think offhand this would not be so easy. I think (without having checked) that what takes the most time is constructing all the objects to support the files - mbeans, interceptors, etc. This usually starts with the mbean being created. With our current mbean naming system, this would mean the old mbean had to go away first. (same for jndi bindings -- and I dont' have a solution for them yet). At one point we discussed having versioned mbeans -- another ObjectName component version=1234. Adding this, (except for the jndi), you could have 2 deployed versions at the same time. External (to the deployed objects) ObjectName references would have to be changed into queries to get the last version. Maybe a proxy mbean could store the deployed version and forward to it. Anyway, this would allow old requests to finish using the old mbeans while new ones used the new deployment. After a suitable time period the old mbeans could be undeployed. david jencks What I would really like, is to see that a redeploy needs to happen, and have the new file extracted into a new directory first, THEN have the old version undeployed, then have the new one deployed, then have the old one deleted. The current way things are done, there is a big window open while the undeployment and redeployment is happening. ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] Developing with JBoss
Hey Developing with JBoss used to be very good due to hot deploy features. Now that our app is growing rapidly (mostly LOADS of JSP's) we're seeing that it's not so nice, because we have to package the app as an EAR file before deployment. If JBoss could work from a directory, that would cut down the dev cycle by a lot. Looking at the J2EE deployer it seems as though it can take a directory as input. However, if that is the case, then it gets packaged into a JAR anyway! Thus, the overhead we skipped by not packaging it into an EAR file in the first place is added anyway. Is this really necessary, and would it be possible to change it? As it is, we have a redeploy cycle of about a minute, which is not nice... /Rickard -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
How would this help in the least? My understanding is that if you use a directory, the dd is checked for time changes and if it changes the whole app is undeployed and redeployed. Unless you can put your app in independently deployable chunks, you will need to undeploy and redeploy the entire application anyway. Why can't you use the Scoped Classloader, which puts several ears into the same classloader and application? Also if the problem is with jsps I thought I saw somewhere that you could change the copied, deployed, unpacked jsp files while the app was running and they would get picked up and recompiled. Haven't tried this though. david jencks On 2001.11.21 03:58:06 -0500 Rickard Öberg wrote: Hey Developing with JBoss used to be very good due to hot deploy features. Now that our app is growing rapidly (mostly LOADS of JSP's) we're seeing that it's not so nice, because we have to package the app as an EAR file before deployment. If JBoss could work from a directory, that would cut down the dev cycle by a lot. Looking at the J2EE deployer it seems as though it can take a directory as input. However, if that is the case, then it gets packaged into a JAR anyway! Thus, the overhead we skipped by not packaging it into an EAR file in the first place is added anyway. Is this really necessary, and would it be possible to change it? As it is, we have a redeploy cycle of about a minute, which is not nice... /Rickard -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
David Jencks wrote: How would this help in the least? My understanding is that if you use a directory, the dd is checked for time changes For the auto-deployer, yes. I think I'd actually prefer to not use the auto-deployer, and instead make an Ant task that does the deploy command explicitly. Then there's no need to watch dd's or anything. and if it changes the whole app is undeployed and redeployed. Unless you can put your app in independently deployable chunks, you will need to undeploy and redeploy the entire application anyway. What I want to avoid is the copying and packaging that goes on. Do you have any idea of the time it takes to package 1500 JSP's into a JAR, and then have that 3-4Mb file copied and exploded into a tmp dir, and this for every time you make a change in a single JSP? Forever I can tell you. It adds up to *a lot* of time each day for just redeployment. Why can't you use the Scoped Classloader, which puts several ears into the same classloader and application? Could work, but I'd rather do something portable. Plus, it's non-trivial to break up our app (it's rather monolithic). Plus, several EAR's - several web deployments - several web contexts - no session sharing - no good. Also if the problem is with jsps I thought I saw somewhere that you could change the copied, deployed, unpacked jsp files while the app was running and they would get picked up and recompiled. Haven't tried this though. No good. So, I change a file, and get it to work. I then change a class and rebuild. Poof, my changed JSP file is gone. No, it needs to be clean, or there's just no point. /Rickard -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
On 2001.11.21 11:53:03 -0500 Rickard Öberg wrote: David Jencks wrote: How would this help in the least? My understanding is that if you use a directory, the dd is checked for time changes For the auto-deployer, yes. I think I'd actually prefer to not use the auto-deployer, and instead make an Ant task that does the deploy command explicitly. Then there's no need to watch dd's or anything. and if it changes the whole app is undeployed and redeployed. Unless you can put your app in independently deployable chunks, you will need to undeploy and redeploy the entire application anyway. What I want to avoid is the copying and packaging that goes on. Do you have any idea of the time it takes to package 1500 JSP's into a JAR, and then have that 3-4Mb file copied and exploded into a tmp dir, and this for every time you make a change in a single JSP? Forever I can tell you. It adds up to *a lot* of time each day for just redeployment. Ok, I'll believe you. Why can't you use the Scoped Classloader, which puts several ears into the same classloader and application? Could work, but I'd rather do something portable. Plus, it's non-trivial to break up our app (it's rather monolithic). Plus, several EAR's - several web deployments - several web contexts - no session sharing - no good. You're talking about a non-portable development environment anyway aren't you? Putting pieces of your 1500 jsps in different files might not be so hard??? I really don't know, just talking. Also if the problem is with jsps I thought I saw somewhere that you could change the copied, deployed, unpacked jsp files while the app was running and they would get picked up and recompiled. Haven't tried this though. No good. So, I change a file, and get it to work. I then change a class and rebuild. Poof, my changed JSP file is gone. No, it needs to be clean, or there's just no point. ??? Are you proposing to change a copy of the source for the jsp rather than the source?? Cmon, you change your jsp in src, deployment of change consists of copying changed file to temp deployment directory?? You rebuild from source, you pick up the changes. Only problem I see is automatically finding the correct tmp deploy directory again after redeployment of the whole ear. david /Rickard -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
Rickard Öberg wrote: David Jencks wrote: How would this help in the least? My understanding is that if you use a directory, the dd is checked for time changes For the auto-deployer, yes. I think I'd actually prefer to not use the auto-deployer, and instead make an Ant task that does the deploy command explicitly. Then there's no need to watch dd's or anything. I ran into the same problem and solved it by running Tomcat 4.0 as a separate process during development. Since tomcat works just fine with an already unpacked tree for my webapp, I simply modify my JSPs directly (I have a symbolic link from my webapp development tree to tomcat's webapps directory.) My ant rule to compile servlets and EJB remote/home interfaces is followed by a simple request to tomcat to reload the app: wget --http-user=foo --http-passwd=bar http://localhost:8080/manager/reload?path=/myapp I found this to be much easier than having to put the webapp in the ear for jboss. -- Andrew Scherpbier ( [EMAIL PROTECTED]) CTO, BlackBall Music ( http://www.blackballmusic.com/) ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
Luke Taylor wrote: It's not just about the time for the deployment, which is minimal - if you're working on frontend stuff and just essentially modifying web pages, then you lose your whole session state. If you have a complicated web application with security, shopping carts etc, and you're working on the checkout pages, then you have to go through the whole use-case procedure every time you redeploy. If a web container can be configured to pick up the jsp's directly then you only have to reload the page to see a change. One solution is to use a template engine such as Velocity instead of JSP. Then there's no problem whatsoever: just have it pick up changed templates from your /src dev directory. That is, if you have a choice in the first place. /Rickard -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
RE: [JBoss-dev] Developing with JBoss
In our app, we don't use wars and ears, only jars for our EJBs. Our jsps run off of a directory exposed through Jetty. That way we can easily modify jsps on the fly. Can't see why anybody would use WARS and EARS unless you were shipping a product. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Luke Taylor Sent: Wednesday, November 21, 2001 12:59 PM To: [EMAIL PROTECTED] Subject: Re: [JBoss-dev] Developing with JBoss Andrew Scherpbier wrote: Rickard Öberg wrote: David Jencks wrote: How would this help in the least? My understanding is that if you use a directory, the dd is checked for time changes For the auto-deployer, yes. I think I'd actually prefer to not use the auto-deployer, and instead make an Ant task that does the deploy command explicitly. Then there's no need to watch dd's or anything. I ran into the same problem and solved it by running Tomcat 4.0 as a separate process during development. Since tomcat works just fine with an already unpacked tree for my webapp, I simply modify my JSPs directly (I have a symbolic link from my webapp development tree to tomcat's webapps directory.) I remember now raising the same sort of issue during the JBoss training in London. I always end up running a separate web container during development because the turnaround of redeploying due to minor jsp changes is just too frustrating. It's not just about the time for the deployment, which is minimal - if you're working on frontend stuff and just essentially modifying web pages, then you lose your whole session state. If you have a complicated web application with security, shopping carts etc, and you're working on the checkout pages, then you have to go through the whole use-case procedure every time you redeploy. If a web container can be configured to pick up the jsp's directly then you only have to reload the page to see a change. The only solution I've found is to run a separate tomcat instance against jboss, with only the web application configured. The full ear is still deployed in jboss as it would be in production. Configuring security for a separate web container is a bit of a drag. The ideal situation would be if an integrated JBoss/Jetty or JBoss/Tomcat could also be configured to use a separately configured web application context during development and have the web coantainer spot modifications to JSPs as above. Dunno if this is feasible, pie in the sky or what ... Luke. -- Luke Taylor. Monkey Machine Ltd. PGP Key ID: 0x57E9523Chttp://www.mkeym.com ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
David Jencks wrote: Could work, but I'd rather do something portable. Plus, it's non-trivial to break up our app (it's rather monolithic). Plus, several EAR's - several web deployments - several web contexts - no session sharing - no good. You're talking about a non-portable development environment anyway aren't you? Putting pieces of your 1500 jsps in different files might not be so hard??? Yes, I am talking about non-portable development environment. When I'm done, I package an EAR anyway. And no, again, splitting the app into multiple WAR's is Not An Option. ??? Are you proposing to change a copy of the source for the jsp rather than the source?? That's what I thought *you* meant... which would be dumb.. Cmon, you change your jsp in src, deployment of change consists of copying changed file to temp deployment directory?? That's much better, assuming I know where the tmp directory is. And I don't, since the name keeps changing for each deployment. :-( You rebuild from source, you pick up the changes. Only problem I see is automatically finding the correct tmp deploy directory again after redeployment of the whole ear. Exactly. Paaain.. /R -- Rickard Öberg ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
RE: [JBoss-dev] Developing with JBoss
|I remember now raising the same sort of issue during the JBoss training |in London. I always end up running a separate web container during Yes I remember, |development because the turnaround of redeploying due to minor jsp |changes is just too frustrating. | |It's not just about the time for the deployment, which is minimal - if |you're working on frontend stuff and just essentially modifying web |pages, then you lose your whole session state. If you have a complicated |web application with security, shopping carts etc, and you're working on |the checkout pages, then you have to go through the whole use-case |procedure every time you redeploy. If a web container can be configured |to pick up the jsp's directly then you only have to reload the page to |see a change. I see |The only solution I've found is to run a separate tomcat instance |against jboss, with only the web application configured. The full ear is |still deployed in jboss as it would be in production. Configuring |security for a separate web container is a bit of a drag. that is a good point |The ideal situation would be if an integrated JBoss/Jetty or |JBoss/Tomcat could also be configured to use a separately configured web |application context during development and have the web coantainer spot |modifications to JSPs as above. Hey Rickard and you both have RW, use it! don't let poor David do all the work. You know what you want, code what you want |Dunno if this is feasible, pie in the sky or what ... sure, marcf | |Luke. | | |-- | Luke Taylor. Monkey Machine Ltd. | PGP Key ID: 0x57E9523Chttp://www.mkeym.com | | | | |___ |Jboss-development mailing list |[EMAIL PROTECTED] |https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
RE: [JBoss-dev] Developing with JBoss
|In our app, we don't use wars and ears, only jars for our EJBs. Our jsps |run off of a directory exposed through Jetty. That way we can |easily modify |jsps on the fly. Can't see why anybody would use WARS and EARS unless you |were shipping a product. this from teh packaging lover of 3 days ago ? ;=) marcf | | -Original Message- | From: [EMAIL PROTECTED] | [mailto:[EMAIL PROTECTED]]On Behalf Of Luke | Taylor | Sent: Wednesday, November 21, 2001 12:59 PM | To: [EMAIL PROTECTED] | Subject: Re: [JBoss-dev] Developing with JBoss | | | Andrew Scherpbier wrote: | | Rickard Öberg wrote: | | David Jencks wrote: | | How would this help in the least? My understanding is that | if you use a | directory, the dd is checked for time changes | | | For the auto-deployer, yes. I think I'd actually prefer to |not use the | auto-deployer, and instead make an Ant task that does the deploy | command explicitly. Then there's no need to watch dd's or anything. | | | I ran into the same problem and solved it by running Tomcat 4.0 as a | separate process during development. Since tomcat works just |fine with | an already unpacked tree for my webapp, I simply modify my | JSPs directly | (I have a symbolic link from my webapp development tree to tomcat's | webapps directory.) | | | I remember now raising the same sort of issue during the JBoss training | in London. I always end up running a separate web container during | development because the turnaround of redeploying due to minor jsp | changes is just too frustrating. | | It's not just about the time for the deployment, which is minimal - if | you're working on frontend stuff and just essentially modifying web | pages, then you lose your whole session state. If you have a complicated | web application with security, shopping carts etc, and you're working on | the checkout pages, then you have to go through the whole use-case | procedure every time you redeploy. If a web container can be configured | to pick up the jsp's directly then you only have to reload the page to | see a change. | | The only solution I've found is to run a separate tomcat instance | against jboss, with only the web application configured. The full ear is | still deployed in jboss as it would be in production. Configuring | security for a separate web container is a bit of a drag. | | The ideal situation would be if an integrated JBoss/Jetty or | JBoss/Tomcat could also be configured to use a separately configured web | application context during development and have the web coantainer spot | modifications to JSPs as above. | | Dunno if this is feasible, pie in the sky or what ... | | Luke. | | | -- | Luke Taylor. Monkey Machine Ltd. | PGP Key ID: 0x57E9523Chttp://www.mkeym.com | | | | | ___ | Jboss-development mailing list | [EMAIL PROTECTED] | https://lists.sourceforge.net/lists/listinfo/jboss-development | | | | |___ |Jboss-development mailing list |[EMAIL PROTECTED] |https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
RE: [JBoss-dev] Developing with JBoss
-Original Message- From: marc fleury [mailto:[EMAIL PROTECTED]] Sent: Wednesday, November 21, 2001 1:50 PM To: [EMAIL PROTECTED]; Luke Taylor; [EMAIL PROTECTED] Subject: RE: [JBoss-dev] Developing with JBoss |In our app, we don't use wars and ears, only jars for our EJBs. Our jsps |run off of a directory exposed through Jetty. That way we can |easily modify |jsps on the fly. Can't see why anybody would use WARS and EARS unless you |were shipping a product. this from teh packaging lover of 3 days ago ? ;=) Doh! I did say, unless you were shipping a product :) marcf | | -Original Message- | From: [EMAIL PROTECTED] | [mailto:[EMAIL PROTECTED]]On Behalf Of Luke | Taylor | Sent: Wednesday, November 21, 2001 12:59 PM | To: [EMAIL PROTECTED] | Subject: Re: [JBoss-dev] Developing with JBoss | | | Andrew Scherpbier wrote: | | Rickard Öberg wrote: | | David Jencks wrote: | | How would this help in the least? My understanding is that | if you use a | directory, the dd is checked for time changes | | | For the auto-deployer, yes. I think I'd actually prefer to |not use the | auto-deployer, and instead make an Ant task that does the deploy | command explicitly. Then there's no need to watch dd's or anything. | | | I ran into the same problem and solved it by running Tomcat 4.0 as a | separate process during development. Since tomcat works just |fine with | an already unpacked tree for my webapp, I simply modify my | JSPs directly | (I have a symbolic link from my webapp development tree to tomcat's | webapps directory.) | | | I remember now raising the same sort of issue during the JBoss training | in London. I always end up running a separate web container during | development because the turnaround of redeploying due to minor jsp | changes is just too frustrating. | | It's not just about the time for the deployment, which is minimal - if | you're working on frontend stuff and just essentially modifying web | pages, then you lose your whole session state. If you have a complicated | web application with security, shopping carts etc, and you're working on | the checkout pages, then you have to go through the whole use-case | procedure every time you redeploy. If a web container can be configured | to pick up the jsp's directly then you only have to reload the page to | see a change. | | The only solution I've found is to run a separate tomcat instance | against jboss, with only the web application configured. The full ear is | still deployed in jboss as it would be in production. Configuring | security for a separate web container is a bit of a drag. | | The ideal situation would be if an integrated JBoss/Jetty or | JBoss/Tomcat could also be configured to use a separately configured web | application context during development and have the web coantainer spot | modifications to JSPs as above. | | Dunno if this is feasible, pie in the sky or what ... | | Luke. | | | -- | Luke Taylor. Monkey Machine Ltd. | PGP Key ID: 0x57E9523Chttp://www.mkeym.com | | | | | ___ | Jboss-development mailing list | [EMAIL PROTECTED] | https://lists.sourceforge.net/lists/listinfo/jboss-development | | | | |___ |Jboss-development mailing list |[EMAIL PROTECTED] |https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
Rickard Öberg wrote: That's much better, assuming I know where the tmp directory is. And I don't, since the name keeps changing for each deployment. :-( Something people have been compaining about roughly forever. ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
Bill Burke wrote: In our app, we don't use wars and ears, only jars for our EJBs. Our jsps run off of a directory exposed through Jetty. That way we can easily modify jsps on the fly. Can't see why anybody would use WARS and EARS unless you were shipping a product. I've worked in a lot of companies where the production environment was that separated from development - the simpler the package you can hand over the better, since the people who support production environments tend to be on a different planet. -danch ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
On Wed, 21 Nov 2001, Rickard [ISO-8859-1] Öberg wrote: What I want to avoid is the copying and packaging that goes on. Do you have any idea of the time it takes to package 1500 JSP's into a JAR, and then have that 3-4Mb file copied and exploded into a tmp dir, and this for every time you make a change in a single JSP? Forever I can tell you. It adds up to *a lot* of time each day for just redeployment. This is a problem I believe with ant. It adds/updates ALL input files to the jar, when the rule is called. It should only add/update files that are newer than the jar file. Then the building would be fast. For development, I run jboss locally, and symlink from jboss' deploy dir to my build dir. Then, you are only dealing with the rmdir and unpack stuff, when undeploying/deploying. ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
On 2001.11.21 14:06:58 -0500 danch wrote: Rickard Öberg wrote: That's much better, assuming I know where the tmp directory is. And I don't, since the name keeps changing for each deployment. :-( Something people have been compaining about roughly forever. I think there are possible problems with trying to always use the same temp dir -- for instance you might have problems removing the old copy before you wanted to start the new one. We might be able to cook up some crazy really hot redeploy whereby the new version is started before the old one is stopped, allowing the requests in process in the old version to complete while new requests go to the new version. What if we made the location of the temp dir visible through an mbean representing the deployment? You could have a little ant task to ask where the war went. david jencks ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
On Wed, 21 Nov 2001, David Jencks wrote: On 2001.11.21 14:06:58 -0500 danch wrote: Rickard Öberg wrote: That's much better, assuming I know where the tmp directory is. And I don't, since the name keeps changing for each deployment. :-( Something people have been compaining about roughly forever. I think there are possible problems with trying to always use the same temp dir -- for instance you might have problems removing the old copy before you wanted to start the new one. We might be able to cook up some crazy really hot redeploy whereby the new version is started before the old one is stopped, allowing the requests in process in the old version to complete while new requests go to the new version. What if we made the location of the temp dir visible through an mbean representing the deployment? You could have a little ant task to ask where the war went. What I would really like, is to see that a redeploy needs to happen, and have the new file extracted into a new directory first, THEN have the old version undeployed, then have the new one deployed, then have the old one deleted. The current way things are done, there is a big window open while the undeployment and redeployment is happening. ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
Re: [JBoss-dev] Developing with JBoss
This makes alot of sence, would it be hard to augment the deployer in such a fashion as to make the window smaller? --jason What I would really like, is to see that a redeploy needs to happen, and have the new file extracted into a new directory first, THEN have the old version undeployed, then have the new one deployed, then have the old one deleted. The current way things are done, there is a big window open while the undeployment and redeployment is happening. ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development