You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by le...@gmail.com on 2014/03/13 19:32:57 UTC

tapestry + maven + jboss tools + hot deploying ?

Hi all,

I got the following scenario,

- A Tapestry 5.3 web application called project A (contains tml files, java
pages files, and common web files)
- A Business logic project called B (Business services)
- A Model project called C (pojos with hibernate annotations and daos)

- I manage project dependencies with Maven 2.

- I deploy project from eclipse(Juno) using Jboss Tools(1.4.0) and Jboss
Tools Maven Integration(1.4.0) to a Wildfly 8.0.1 server .

In order to deploy web application i have created a new server (jboss
server type).
I run my A project into the mentioned server.

All is working fine except i want tml files changes to be taken on the fly
without the automatically  re deploying of the application.

Questions:
1) Is there a way to change tml and java files on project A  without the
need of redeploying the whole app??

The server configuration has an option to publish  the project (re-deploy)
when a resource has changed. But it redeploys the whole application also
when i change tml files from project A. The worst part is that session data
get lost and i have to re login to application and complete forms again.

If i chose "Never publish automatically" none of my changes are seen by
server.

2) If answer to question 1 is positive now i want to know if is there a way
to change and compile project B and C classes and see the changes without
redeployng web application?


3) I know Tapestry's Jumpstart application works on JBoss/Wildfly does
anyone knows if T5's class reloading works in JBoss?
At least it's not working for me,  Geoff do you have any thoughts on this
topic?

cheers and thanks in advance!

Leandro.

Re: VS: tapestry + maven + jboss tools + hot deploying ?

Posted by le...@gmail.com.
Thanks for your answers.

I found the solution in jboss forum.

In case someone faces the same problem here is the link with the correct
answer by Snjezana Peco:
https://community.jboss.org/en/tools/blog/2011/02/21/getting-started-with-jboss-tools-jboss-maven-integration-and-weld?et=blogs.comment.created#comment-13436

I was missing some jboss configuration.




2014-03-14 8:39 GMT-03:00 Thiago H de Paula Figueiredo <th...@gmail.com>:

> On Fri, 14 Mar 2014 04:06:04 -0300, Ville Virtanen <
> ville.virtanen@orientimport.fi> wrote:
>
>  on the fly that it manages, but not the others. I've seen that Tapestry's
>> offering is enough for most setups, but I've always struggled a bit with
>> large multiproject setups, as only the main project is easy to get
>> refreshed
>> on the fly. If someone knows a way to do it, please let me know.
>>
>
> Never had a problem with that using Eclipse (I haven't tried the other
> IDEs for a long time) and RunJettyRun or an embedded Jetty instance (one
> created programatically, very easy to do). Maven's jetty:run sucks
> incredibly hard for debugging and multiproject setups. Just make sure the
> main project has the other as dependencies, manually in Eclipse or
> automatically through the Maven plugin.
>
> --
> Thiago H. de Paula Figueiredo
> Tapestry, Java and Hibernate consultant and developer
> http://machina.com.br
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

Re: VS: tapestry + maven + jboss tools + hot deploying ?

Posted by Thiago H de Paula Figueiredo <th...@gmail.com>.
On Fri, 14 Mar 2014 04:06:04 -0300, Ville Virtanen  
<vi...@orientimport.fi> wrote:

> on the fly that it manages, but not the others. I've seen that Tapestry's
> offering is enough for most setups, but I've always struggled a bit with
> large multiproject setups, as only the main project is easy to get  
> refreshed
> on the fly. If someone knows a way to do it, please let me know.

Never had a problem with that using Eclipse (I haven't tried the other  
IDEs for a long time) and RunJettyRun or an embedded Jetty instance (one  
created programatically, very easy to do). Maven's jetty:run sucks  
incredibly hard for debugging and multiproject setups. Just make sure the  
main project has the other as dependencies, manually in Eclipse or  
automatically through the Maven plugin.

-- 
Thiago H. de Paula Figueiredo
Tapestry, Java and Hibernate consultant and developer
http://machina.com.br

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


VS: tapestry + maven + jboss tools + hot deploying ?

Posted by Ville Virtanen <vi...@orientimport.fi>.
Live class reloading works in JBoss too, at least the last time I used it.
(7.x.x) You have to make your IDE to compile directly to the web container
exploded directory structure. This is specific to your IDE / web container,
and not really Tapestry. 

First of all read this: https://tapestry.apache.org/class-reloading.html
especially "Troubleshooting Live Class Reloading" and "If Live Class
Reloading doesn't work". 

https://www.google.fi/search?q=eclipse+compile+on+save 
https://www.google.fi/search?q=eclipse+change+output+directory 

If you want full code-refresh-view cycle, you should look at
http://zeroturnaround.com/software/jrebel/ Tapestry only changes the classes
on the fly that it manages, but not the others. I've seen that Tapestry's
offering is enough for most setups, but I've always struggled a bit with
large multiproject setups, as only the main project is easy to get refreshed
on the fly. If someone knows a way to do it, please let me know.

I don't think the question was about HA, but here goes nothing: if you're
going to have high availability site, you should have multiple backend
servers that you can bounce one by one. Have your load balancer(s) to
automaticly ping back end servers and drop dead ones and add resurrecting
back, remember to replicate session or go stateless. The services behind the
web application servers must also be ofcourse clustered and accessed through
LB ip address for an example.

In that setup you can freely stop and start nodes, provided that the
remaining ones have enough power to serve incoming requests. Script you
deployment so that it automaticly stops a node, redeploys, starts it back
up, moves to next node after your monitoring tells the node is back online,
otherwise retries. The tools to make this happen may include nagios
(http://www.nagios.org/), new relic (http://newrelic.com/), chef
(http://www.getchef.com/chef/) / puppet (http://puppetlabs.com/)

Ville

-----Alkuperäinen viesti-----
Lähettäjä: Geoff Callender [mailto:geoff.callender.jumpstart@gmail.com] 
Lähetetty: 14. maaliskuuta 2014 2:30
Vastaanottaja: Tapestry users
Aihe: Re: tapestry + maven + jboss tools + hot deploying ?

I've never had to operate a high-availability site, so I've not needed to
deal with this. I've always had a maintenance window available.

Some years ago I used to develop in JBoss with an expanded EAR, and hot
deploy worked fine, with the usual caveat that eventually you'll get PermGen
errors.

Cheers,

Geoff

On 14/03/2014, at 5:32 AM, leandroaispuru@gmail.com wrote:

> Hi all,
> 
> I got the following scenario,
> 
> - A Tapestry 5.3 web application called project A (contains tml files, 
> java pages files, and common web files)
> - A Business logic project called B (Business services)
> - A Model project called C (pojos with hibernate annotations and daos)
> 
> - I manage project dependencies with Maven 2.
> 
> - I deploy project from eclipse(Juno) using Jboss Tools(1.4.0) and 
> Jboss Tools Maven Integration(1.4.0) to a Wildfly 8.0.1 server .
> 
> In order to deploy web application i have created a new server (jboss 
> server type).
> I run my A project into the mentioned server.
> 
> All is working fine except i want tml files changes to be taken on the 
> fly without the automatically  re deploying of the application.
> 
> Questions:
> 1) Is there a way to change tml and java files on project A  without 
> the need of redeploying the whole app??
> 
> The server configuration has an option to publish  the project 
> (re-deploy) when a resource has changed. But it redeploys the whole 
> application also when i change tml files from project A. The worst 
> part is that session data get lost and i have to re login to application
and complete forms again.
> 
> If i chose "Never publish automatically" none of my changes are seen 
> by server.
> 
> 2) If answer to question 1 is positive now i want to know if is there 
> a way to change and compile project B and C classes and see the 
> changes without redeployng web application?
> 
> 
> 3) I know Tapestry's Jumpstart application works on JBoss/Wildfly does 
> anyone knows if T5's class reloading works in JBoss?
> At least it's not working for me,  Geoff do you have any thoughts on 
> this topic?
> 
> cheers and thanks in advance!
> 
> Leandro.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: tapestry + maven + jboss tools + hot deploying ?

Posted by Geoff Callender <ge...@gmail.com>.
I've never had to operate a high-availability site, so I've not needed to deal with this. I've always had a maintenance window available.

Some years ago I used to develop in JBoss with an expanded EAR, and hot deploy worked fine, with the usual caveat that eventually you'll get PermGen errors.

Cheers,

Geoff

On 14/03/2014, at 5:32 AM, leandroaispuru@gmail.com wrote:

> Hi all,
> 
> I got the following scenario,
> 
> - A Tapestry 5.3 web application called project A (contains tml files, java
> pages files, and common web files)
> - A Business logic project called B (Business services)
> - A Model project called C (pojos with hibernate annotations and daos)
> 
> - I manage project dependencies with Maven 2.
> 
> - I deploy project from eclipse(Juno) using Jboss Tools(1.4.0) and Jboss
> Tools Maven Integration(1.4.0) to a Wildfly 8.0.1 server .
> 
> In order to deploy web application i have created a new server (jboss
> server type).
> I run my A project into the mentioned server.
> 
> All is working fine except i want tml files changes to be taken on the fly
> without the automatically  re deploying of the application.
> 
> Questions:
> 1) Is there a way to change tml and java files on project A  without the
> need of redeploying the whole app??
> 
> The server configuration has an option to publish  the project (re-deploy)
> when a resource has changed. But it redeploys the whole application also
> when i change tml files from project A. The worst part is that session data
> get lost and i have to re login to application and complete forms again.
> 
> If i chose "Never publish automatically" none of my changes are seen by
> server.
> 
> 2) If answer to question 1 is positive now i want to know if is there a way
> to change and compile project B and C classes and see the changes without
> redeployng web application?
> 
> 
> 3) I know Tapestry's Jumpstart application works on JBoss/Wildfly does
> anyone knows if T5's class reloading works in JBoss?
> At least it's not working for me,  Geoff do you have any thoughts on this
> topic?
> 
> cheers and thanks in advance!
> 
> Leandro.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org