-
1. Configuring JBoss to point to a custom directory instead of default/deploy directory
jaikiran Jan 30, 2011 11:22 PM (in response to infinity2heaven)Priya M wrote:
Instead of deploying the war or exploded war to default/deploy directory, can JBoss 6 be pointed to a local exploded war file structure, keeping the configuration of default server?
http://community.jboss.org/wiki/HowtodeploymyapplicationinanexternaldirectoryinJBoss-5
-
2. Configuring JBoss to point to a custom directory instead of default/deploy directory
infinity2heaven Jan 31, 2011 1:29 AM (in response to jaikiran)I get the following error when tried the steps and configured to my webroot directory:
Caused by: java.lang.IllegalAccessError: org/jboss/seam/solder/log/TypedMessageBundle
at org.jboss.seam.solder.log.LoggerExtension.detectProducers(LoggerExtension.java:75)
at sun.reflect.GeneratedMethodAccessor302.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:305)
at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54)
at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163)
at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:299)
at org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:188)
at org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:59)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:198)
... 69 more
-
3. Configuring JBoss to point to a custom directory instead of default/deploy directory
nickarls Jan 31, 2011 1:36 AM (in response to infinity2heaven)Wonder if it has implications for reflection usage? It shouldn't, though, since I think eclipse uses this technique to map exploded wars...
-
4. Configuring JBoss to point to a custom directory instead of default/deploy directory
infinity2heaven Jan 31, 2011 1:53 AM (in response to nickarls)Turns out that it doesn't work for a exploded jars in default/deploy dir either. Looks like a bug in JBoss AS 6?
Note that it works if the same is in a war file.
This makes my hot deploy impossible as I need to create a new war even for simple resource changes. Anyone else, have any luck using hotdeploy?
45 seconds for server restart; I might goback to Tomcat or Glassfish 3.
-
5. Configuring JBoss to point to a custom directory instead of default/deploy directory
mp911de Jan 31, 2011 1:58 AM (in response to infinity2heaven)I'm currently working on a Dev-Environment-Deployer for Multi-Project-Development. With this Deployer you could define additional Class-Paths and start your Server without an Deployment-Action (skipping Ant/Maven or some other kinds of Extra-Deployments).
-
6. Configuring JBoss to point to a custom directory instead of default/deploy directory
nickarls Jan 31, 2011 1:59 AM (in response to infinity2heaven)I use JRebel + eclipse with maven without any problems. I startup the server in eclipse, and code in eclipse and 95% of the time the changes show up immediately. Once in a while I get a "query not found when I change entities" but then it's just "mvn clean install jboss:hard-deploy" in my console without any server restarts.
-
7. Configuring JBoss to point to a custom directory instead of default/deploy directory
infinity2heaven Jan 31, 2011 2:27 AM (in response to nickarls)Nicklas -- Can you share the steps to work with JRebel + JBoss IDE?
I've used jrebel extensively in the past but with Tomcat (it's just a bunch of jvm args on the server). However, I don't use Maven but ivy/ant.
Here's my project structure
src/
test/
web/
Everything under web is packaged as a WAR and currently being deployed in default/jboss.
After setting the web directory in conf/boostrap/profile.xml I get the above errrors ("Caused by: java.lang.IllegalAccessError: org/jboss/seam/solder/log/TypedMessageBundl").
JRebel seems to work when your server is pointing to a exploded folder and IDE throws the autocompile classes into the same folder. Right?
With the problems I have, how would you make JRebel work with a WAR file and a different project source?
-
8. Configuring JBoss to point to a custom directory instead of default/deploy directory
nickarls Jan 31, 2011 2:33 AM (in response to infinity2heaven)Hmm, hard to say when the structure is that different. I use
<?xml version="1.0" encoding="UTF-8"?>
<application
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.zeroturnaround.com"
xsi:schemaLocation="http://www.zeroturnaround.com http://www.zeroturnaround.com/alderaan/rebel-2_0.xsd">
<classpath>
<dir name="C:\Java\IDE\Indigo-M4\workspace\TheApp\target\classes"/>
<dir name="C:\Java\IDE\Indigo-M4\workspace\TheApp\src\main\resources"/>
</classpath>
<web>
<link target="/">
<dir name="C:\Java\IDE\Indigo-M4\workspace\TheApp\src\main\webapp"/>
</link>
</web>
</application>
A multimodule setup would probably require some more jrebel magic. The jrebel support team is usually helpful, though, so you might want to run them by them - they have probably seen most setups people can think of.
-
9. Configuring JBoss to point to a custom directory instead of default/deploy directory
infinity2heaven Jan 31, 2011 11:03 AM (in response to nickarls)I've posted in the jrebel forum. In the interim, the original question is still unsolved. I'm unable to deploy an exploded war without class loading issues. The new error is:
Error configuring application listener of class org.jboss.weld.integration.webtier.jsp.JspInitializationListener: java.lang.ClassNotFoundException: org.jboss.weld.integration.webtier.jsp.JspInitializationListener
Again, the same app works fine with a war and exploding in the same place generates classloading issues.
-
10. Configuring JBoss to point to a custom directory instead of default/deploy directory
arhan Jan 31, 2011 5:44 PM (in response to nickarls)With multi-module project it is basically the same, just one thing to keep in mind: for WAR archives rebel.xml should be placed in WEB-INF/classes, and for any others in the root of the archive. If you use maven, rebel.xml can be automatically generated using the maven-jrebel-plugin and it will be placed to the correct location.
-
11. Configuring JBoss to point to a custom directory instead of default/deploy directory
arhan Jan 31, 2011 5:47 PM (in response to infinity2heaven)Could you point, what was the topic at JRebel forum?
-
12. Re: Configuring JBoss to point to a custom directory instead of default/deploy directory
infinity2heaven Feb 1, 2011 9:26 PM (in response to infinity2heaven)I got this working by deploying an explodable war (ending with .war). JRebel had some bugs and they released a new version 3.6 (again) which supposedly fixed my issues. The JRebel thread is here.
By setting the JBoss Server's setting to "not publish" and with an ant script that copies changed classes/resources to this exploded war for any local changes, I now have a instant hot deploy app. Btw, don't forget to copy a rebel.xml in WEB-INF/classes
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zeroturnaround.com" xsi:schemaLocation="http://www.zeroturnaround.com http://www.zeroturnaround.com/alderaan/rebel-2_0.xsd">
<classpath>
<dir name="/project-location">
</dir>
</classpath>
</application>
-
13. Configuring JBoss to point to a custom directory instead of default/deploy directory
stefanotravelli Apr 20, 2011 4:41 AM (in response to infinity2heaven)I got the same problem with IntellJ IDEA 10 (no JRebel here). Deploying the exploded artifact causes:
Error configuring application listener of class org.jboss.weld.integration.webtier.jsp.JspInitializationListener: java.lang.ClassNotFoundException: org.jboss.weld.integration.webtier.jsp.JspInitializationListener
and some time other classloader related errors.
I got it working making the output directory for the exploded artifact ending with ".war".
-
14. Re: Configuring JBoss to point to a custom directory instead of default/deploy directory
bwilly Jun 15, 2011 3:25 PM (in response to stefanotravelli)The above post gave me the idea to solve my problem. I was seeing the same exception ( java.lang.ClassNotFoundException: org.jboss.weld.integration.webtier.jsp.JspInitializationListener ) when deploying the weld-login example in JBoss6 and Seam3 via IntelliJ. It failed when I was trying to deploy an exploded war, but if I instead deploy the .war, then all is fine. (Unfortunately, while hunting this down, I dropped a Thinkpad onto my Mac keyboard and now the I-key is gonzo.)