When I deploy my jars and wars, I can see in the logs file that they are placed in data/content folder. Also an entry in the standalone.xml is added for each deployment.
The problem is that somehow that folder gets empty and the next time I start the server it throws an error because it can't find the files.
I have to manually edit the standalone.xml to remove the deployments but why in the first place the files are removed? How can I avoid this problem?
I am using ubuntu and jboss eap 6.4
Thanks for your help
Related
On my Jboss EAP 7 server an application.war is deployed. Now i want to update and add some class and jsp files.How can i update existing war without deploying whole war?
#ehsavoie as per your suggestion I can change only jsp file but for Web-Content files I need to restart the application and here is the catch that Jboss maintain the checksum of every deployed application but you copy your new file at an already exploded application. This doesn't affect checksum so, now after restart it explodes your last .war and your changes reverted.
Efficient way to partial deployment is use deployment:add-content command in cli mode.
/deployment=DEPLOYMENT_NAME.war:add-content(content=[{target-path=/path/to/FILE_IN_DEPLOYMENT, input-stream-index=/path/to/LOCAL_FILE_TO_UPLOAD}]
Here is the link if you want to read more.
I am (finally) upgrading from JBoss5.1 to Wildfly 9.0.2.Final (standalone). I am trying to learn how to redeploy a zipped EAR via scp, hoping to have it picked up by the deployment scanner. Per the documentation, all I have to do is set auto-deploy-zipped="true" in standalone.xml (in the deployment descriptor), then copy the .ear into the deployments folder. However, when I do so the scanner places a 'failed' file in the deployments folder with this message:
"There is already a deployment called EAR with the same runtime name EAR.ear"
It sounds like it will not automatically redeploy. I tried adding a signal file named Ear.ear.dodeploy to deployments, but this made no change.
I am able to deploy the EAR via the administration console, but I'm hoping to 'save time' with this scp approach. Hasn't saved time yet! :)
Thanks for any help.
Josh
I figured this out. It turns out that the auto-deploy scheme won't work if you originally deployed the .ear via the administration console. The fix was simply to remove the .ear via the administration console, then take the steps indicated above. Now it deploys and redeploys as expected.
I have a JBoss server whereby when I deploy my ear file from Eclipse, I'm ending up with a whole bunch of jar files missing from the lib/ directory. Upon further investigation, I have found these files - they're in the JBoss server's tmp/vfs-nested.tmp directory. The timestamps all confirm that they're "fresh" from the latest Eclipse server instance publish action I kick off, but I'm perplexed as to why they're residing in this tmp directory and not in the application's (failed) deployment to the server.
JBoss documentation indicates "The tmp directory is used by JBoss to store temporarily files such as unpacked deployments." but I'm unsure as to what the order is or why things are there but not in the deployed application.
Any help?
Dave
I have got a maven project.
So when ever there is a changes done in java file, we take a rebuild of the application .
Put our ear file in deploy folder of jboss and restart the Jboss.
This waste our lot of time in restarting jboss again and again .
I heard about hot deployment in Jboss .
Can any one tell how to do in my case .
Hot deploy is enabled by default in JBoss AS 5.
It should start automatically a couple of seconds after you put ear in deploy folder.
Maybe someone had previously disabled hot deployment on your instance.
Then see Turning off JBoss hot deploy service? and do the opposite.
As I understand, u need a class reloading solution, not auto redeployment.
I recently work out a solution with JBoss 4.x. It probably work with JBoss5.x too. In most of time when I change my code, it reflects immediatly and no redeployment in JBoss.
Here is how:
Turn off JBoss hot deploy service, u can google how.
Create a folder named project.war under JBoss deploy folder, it just works like a war file.
User a file sychronize tools(like FreeFileSync) to sychronize your_project_web_root folder to the project.war folder.
The most important part, use spring-loaded. It's easy and no need to change anything in your project.
4.1 Download springloaded.jar
4.2 If u are using eclipse, just add the following code in the VM arguments of the JBoss Run Configuration.
-javaagent:/springloaded-{VERSION}.jar -noverify
That's it. Now u modify/add methods or fields in a class and then sychronize the class file to the project.war folder, JBoss will reload it and the changes reflect immediately. But springloaded still got some limitation, read the FAQ.
I have two queries which I am detailing below:
I installed tomcat 7.0 on my ubuntu machine 11.04.
1. .war file not deployed
When I start tomcat through terminal it works fine and I am able to see the tomcat webpage at http://localhost::8080/. After that I try to deploy a war file ps.war which I copy into the webapps folder inside the tomcat installation directory. And then I restart the server but get the same 404 error even when the .war has been extracted to a ps folder by tomcat.
2. Not running through eclipse
when I open it through eclipse then it shows in eclipse console that the server is started and synchronized but does not run any service and give HTTP 404 eroor. Also in this case, When I open a browser window then I get same 404 error at http://localhost::8080//
Please help me put as I am quite stuck at this moment and not able to run the web services any further. Thanks in advance.
#ezile i can understand for the first query that .war file was faulty thats why you were unable to get it through the browser..
but for second query solution how can i accept that making a correct .war file made http://localhost:8080 running in eclipse...
I am asking this question as i am having the same (first and second) difficulty !!
Did you mean to have two colons in your URL before the port number? It's supposed to just be one. http://localhost:8080
Next, in your tomcat installation directory there is a directory called logs which contains a few log files which will provide more information than just the 404 message you see in your browser.
One other thing to check which we've ran into before is case. I have seen a problem with WebContent\WEB-INF being the wrong case (i.e. lower case) and Tomcat not wanting to pick up the war artifacts.
Thanks all for your responses. I solved the problem. For first part there was some problems with my .war file and thats why it was not getting deployed.
For second, after I corrected my war, it automatically started working for eclipse too.
In my case it was because the WAR required a full path.
I had specified localhost:8080/WarFileName
Which didn't work. It was only when I specified
localhost:8080/WarFileName/src/homepage
Which was how the packages were created in the war file, that it worked.