You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by James Selvakumar <ja...@mcruncher.com> on 2014/11/28 02:04:33 UTC

DCEVM and Hotswap agent support

Dear Wicket Community,

Just curious if any of you had a look at DCEVM and
https://github.com/HotswapProjects/HotswapAgent.
HotSwapAgent is basically a byte code converter (similar to JRebel) and
already has plugins to support Spring, Hibernate, JSF.
Would like to hear your experience in using this with Wicket.

-- 
Thanks & regards
James Selvakumar
mCruncher

Re: DCEVM and Hotswap agent support

Posted by James Selvakumar <ja...@mcruncher.com>.
Dear all,

Just to complete this loop, I've managed to configure my multi module
Wicket application to reload classes and resources (e.g html, property
files) without restarting the whole application using DCEVM + HotSwapAgent.
After following the standard procedures in configuring these two tools, all
you need to do is to have a property file named "hotswap-agent.properties"
in your web application's classpath and configure the "extraClasspath"
property in it.
If anyone is interested, please take a look at this gist
<https://gist.github.com/sskjames/cf70b961587108a1e79d1cd4ffe6c824> for a
sample configuration.

On Thu, Jun 22, 2017 at 9:43 PM mashleyttu <ma...@gmail.com> wrote:

> I'm evaluating HotSwapAgent as a replacement to JRebel which I've been
> using.
> I'm definitely not asking anyone to troubleshoot a DCEVM/HotSwapAgent
> exception, but I am curious if you have run into this exception. The hot
> swap code changes seem to work, but every time I save a change this occurs.
>
>
> HOTSWAP AGENT: 08:21:29.353 RELOAD
> (org.hotswap.agent.plugin.jvm.AnonymousClassPatchPlugin) - Class
> 'com/foo/bar/formpanels/DashboardPanel' has been enhanced with anonymous
> classes for hotswap.
> HOTSWAP AGENT: 08:21:29.397 ERROR
> (org.hotswap.agent.util.signature.ClassSignatureComparerHelper) - Error
> reading siganture
> org.hotswap.agent.javassist.NotFoundException:
> com.foo.bar.components.listview.Abstract806ListView
>         at org.hotswap.agent.javassist.ClassPool.get(ClassPool.java:445)
>         at
>
> org.hotswap.agent.javassist.bytecode.Descriptor.toCtClass(Descriptor.java:577)
>         at
>
> org.hotswap.agent.javassist.bytecode.Descriptor.getReturnType(Descriptor.java:479)
>         at
> org.hotswap.agent.javassist.CtBehavior.getReturnType0(CtBehavior.java:294)
>         at
> org.hotswap.agent.javassist.CtMethod.getReturnType(CtMethod.java:210)
>         at
>
> org.hotswap.agent.util.signature.CtClassSignature.getMethodString(CtClassSignature.java:117)
>         at
>
> org.hotswap.agent.util.signature.CtClassSignature.getValue(CtClassSignature.java:45)
>         at
>
> org.hotswap.agent.util.signature.ClassSignatureComparerHelper.getCtClassSignature(ClassSignatureComparerHelper.java:21)
>         at
>
> org.hotswap.agent.util.signature.ClassSignatureComparerHelper.isDifferent(ClassSignatureComparerHelper.java:37)
>         at
>
> org.hotswap.agent.util.signature.ClassSignatureComparerHelper.isPoolClassDifferent(ClassSignatureComparerHelper.java:64)
>         at
>
> org.hotswap.agent.plugin.spring.signature.ClassSignatureComparer.isPoolClassDifferent(ClassSignatureComparer.java:31)
>         at
>
> org.hotswap.agent.plugin.spring.SpringChangesAnalyzer.classChangeNeedsReload(SpringChangesAnalyzer.java:43)
>         at
>
> org.hotswap.agent.plugin.spring.SpringChangesAnalyzer.isReloadNeeded(SpringChangesAnalyzer.java:36)
>         at
>
> org.hotswap.agent.plugin.spring.SpringPlugin$1.transform(SpringPlugin.java:80)
>         at
>
> org.hotswap.agent.util.HotswapTransformer.transform(HotswapTransformer.java:177)
>         at
> sun.instrument.TransformerManager.transform(TransformerManager.java:188)
>         at
> sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:428)
>
> Thanks,
> Matt
>
>
> --
> View this message in context:
> http://apache-wicket.1842946.n4.nabble.com/DCEVM-and-Hotswap-agent-support-tp4668576p4678128.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>

Re: DCEVM and Hotswap agent support

Posted by mashleyttu <ma...@gmail.com>.
I'm evaluating HotSwapAgent as a replacement to JRebel which I've been using.
I'm definitely not asking anyone to troubleshoot a DCEVM/HotSwapAgent
exception, but I am curious if you have run into this exception. The hot
swap code changes seem to work, but every time I save a change this occurs.


HOTSWAP AGENT: 08:21:29.353 RELOAD
(org.hotswap.agent.plugin.jvm.AnonymousClassPatchPlugin) - Class
'com/foo/bar/formpanels/DashboardPanel' has been enhanced with anonymous
classes for hotswap.
HOTSWAP AGENT: 08:21:29.397 ERROR
(org.hotswap.agent.util.signature.ClassSignatureComparerHelper) - Error
reading siganture
org.hotswap.agent.javassist.NotFoundException:
com.foo.bar.components.listview.Abstract806ListView
	at org.hotswap.agent.javassist.ClassPool.get(ClassPool.java:445)
	at
org.hotswap.agent.javassist.bytecode.Descriptor.toCtClass(Descriptor.java:577)
	at
org.hotswap.agent.javassist.bytecode.Descriptor.getReturnType(Descriptor.java:479)
	at
org.hotswap.agent.javassist.CtBehavior.getReturnType0(CtBehavior.java:294)
	at org.hotswap.agent.javassist.CtMethod.getReturnType(CtMethod.java:210)
	at
org.hotswap.agent.util.signature.CtClassSignature.getMethodString(CtClassSignature.java:117)
	at
org.hotswap.agent.util.signature.CtClassSignature.getValue(CtClassSignature.java:45)
	at
org.hotswap.agent.util.signature.ClassSignatureComparerHelper.getCtClassSignature(ClassSignatureComparerHelper.java:21)
	at
org.hotswap.agent.util.signature.ClassSignatureComparerHelper.isDifferent(ClassSignatureComparerHelper.java:37)
	at
org.hotswap.agent.util.signature.ClassSignatureComparerHelper.isPoolClassDifferent(ClassSignatureComparerHelper.java:64)
	at
org.hotswap.agent.plugin.spring.signature.ClassSignatureComparer.isPoolClassDifferent(ClassSignatureComparer.java:31)
	at
org.hotswap.agent.plugin.spring.SpringChangesAnalyzer.classChangeNeedsReload(SpringChangesAnalyzer.java:43)
	at
org.hotswap.agent.plugin.spring.SpringChangesAnalyzer.isReloadNeeded(SpringChangesAnalyzer.java:36)
	at
org.hotswap.agent.plugin.spring.SpringPlugin$1.transform(SpringPlugin.java:80)
	at
org.hotswap.agent.util.HotswapTransformer.transform(HotswapTransformer.java:177)
	at sun.instrument.TransformerManager.transform(TransformerManager.java:188)
	at
sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:428)

Thanks,
Matt


--
View this message in context: http://apache-wicket.1842946.n4.nabble.com/DCEVM-and-Hotswap-agent-support-tp4668576p4678128.html
Sent from the Users forum mailing list archive at Nabble.com.

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


Re: DCEVM and Hotswap agent support

Posted by Martin Grigorov <mg...@apache.org>.
Those are not related to the JVM runtime.
Resources are tracked by Wicket. Whenever html or properties file are
updated Wicket clears its caches. There are no caches for CSS/JS so there
is nothing to do for them.

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Fri, Nov 28, 2014 at 11:45 AM, James Selvakumar <ja...@mcruncher.com>
wrote:

> Hi Martin,
>
> Thanks for sharing your experience.
> How about changes to HTML, CSS or property files?
> Does it load those changes too?
>
>
> On Fri, Nov 28, 2014 at 4:08 PM, Martin Grigorov <mg...@apache.org>
> wrote:
>
> > Hi,
> >
> > I use DCEVM (via its Intellij IDEA plugin) every day and I'm very happy
> > with it. Very rarely I need to restart after making changes to classes.
> > I have no experience with HotswapAgent.
> >
> > Martin Grigorov
> > Wicket Training and Consulting
> > https://twitter.com/mtgrigorov
> >
> > On Fri, Nov 28, 2014 at 3:04 AM, James Selvakumar <ja...@mcruncher.com>
> > wrote:
> >
> > > Dear Wicket Community,
> > >
> > > Just curious if any of you had a look at DCEVM and
> > > https://github.com/HotswapProjects/HotswapAgent.
> > > HotSwapAgent is basically a byte code converter (similar to JRebel) and
> > > already has plugins to support Spring, Hibernate, JSF.
> > > Would like to hear your experience in using this with Wicket.
> > >
> > > --
> > > Thanks & regards
> > > James Selvakumar
> > > mCruncher
> > >
> >
>
>
>
> --
> Thanks & regards
> James Selvakumar
> mCruncher
>

Re: DCEVM and Hotswap agent support

Posted by James Selvakumar <ja...@mcruncher.com>.
Hi Martin,

Thanks for sharing your experience.
How about changes to HTML, CSS or property files?
Does it load those changes too?


On Fri, Nov 28, 2014 at 4:08 PM, Martin Grigorov <mg...@apache.org>
wrote:

> Hi,
>
> I use DCEVM (via its Intellij IDEA plugin) every day and I'm very happy
> with it. Very rarely I need to restart after making changes to classes.
> I have no experience with HotswapAgent.
>
> Martin Grigorov
> Wicket Training and Consulting
> https://twitter.com/mtgrigorov
>
> On Fri, Nov 28, 2014 at 3:04 AM, James Selvakumar <ja...@mcruncher.com>
> wrote:
>
> > Dear Wicket Community,
> >
> > Just curious if any of you had a look at DCEVM and
> > https://github.com/HotswapProjects/HotswapAgent.
> > HotSwapAgent is basically a byte code converter (similar to JRebel) and
> > already has plugins to support Spring, Hibernate, JSF.
> > Would like to hear your experience in using this with Wicket.
> >
> > --
> > Thanks & regards
> > James Selvakumar
> > mCruncher
> >
>



-- 
Thanks & regards
James Selvakumar
mCruncher

Re: DCEVM and Hotswap agent support

Posted by Martin Grigorov <mg...@apache.org>.
Hi,

I use DCEVM (via its Intellij IDEA plugin) every day and I'm very happy
with it. Very rarely I need to restart after making changes to classes.
I have no experience with HotswapAgent.

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Fri, Nov 28, 2014 at 3:04 AM, James Selvakumar <ja...@mcruncher.com>
wrote:

> Dear Wicket Community,
>
> Just curious if any of you had a look at DCEVM and
> https://github.com/HotswapProjects/HotswapAgent.
> HotSwapAgent is basically a byte code converter (similar to JRebel) and
> already has plugins to support Spring, Hibernate, JSF.
> Would like to hear your experience in using this with Wicket.
>
> --
> Thanks & regards
> James Selvakumar
> mCruncher
>