-
15. Re: Courting Fakereplace to JBoss.org
lightguard Jun 8, 2010 10:16 AM (in response to alrubinger)Not sure that last definition is a good one to be associated with.
-
16. Re: Courting Fakereplace to JBoss.org
dan.j.allen Jun 8, 2010 10:24 AM (in response to swd847)Stuart Douglas wrote:
Something else that might be of interest is weblogic fastswap:
http://download.oracle.com/docs/cd/E12840_01/wls/docs103/deployment/deployunits.html#wp1053872
As far as I can tell from the description it works in a similar manner to fakereplace, however without the reflection instrumentation. This means that their added methods are visible through the reflection API and it is not possible to change annotation's.
I really like that you thought about reflection. I had picked up on that point right away. Leaving the instrumentation fields/methods exposed to the reflection API would likely lead to strange exceptions and all of a sudden your time saver tool becomes a time sink tool.
-
17. Re: Courting Fakereplace to JBoss.org
dan.j.allen Jun 8, 2010 10:29 AM (in response to swd847)Would it be possible to advise the developer when a formal redeploy of the application is recommended?
For instance, you notice a removed interface or a different superclass. I would simply log a message rather than do the annoying thing that Eclipse does and use a modal dialog to bitch and complain about it
Btw, the feature list looks great. This may be something we can even show off a little at JBossWorld, or at least at JUDCon.
-
18. Re: Courting Fakereplace to JBoss.org
dan.j.allen Jun 8, 2010 10:32 AM (in response to alrubinger)I got a twitter vote for retrokit (though I still like retrofit). Instead of BitSwapper how about ByteSwap (since the bytecode is what we are swapping). Yoink is pretty funny
-
19. Re: Courting Fakereplace to JBoss.org
lightguard Jun 8, 2010 10:38 AM (in response to dan.j.allen)ByteSwap is good too.
-
20. Re: Courting Fakereplace to JBoss.org
alrubinger Jun 8, 2010 11:21 AM (in response to dan.j.allen)Please, please, please:
BabeSwap
(CAFEBABE, as Dan alludes to, is the hex magic header of the Java Class File format).
S,ALR
-
21. Re: Courting Fakereplace to JBoss.org
cwash Jun 8, 2010 12:34 PM (in response to swd847)JRebel has "plugins" that allow you to reload configuration files specific to various frameworks that are out there.
It sounded like a straightforward thing for them to implement, in listening to them talk about it when they were on a recent JavaPosse podcast.
I would imagine it would be useful to have something similar in Fakereplace... thoughts?
-
22. Re: Courting Fakereplace to JBoss.org
cwash Jun 8, 2010 2:28 PM (in response to alrubinger)Sorry this is a bit off topic, but until we get project infrastructure set up, I wanted to add a note here.
In the past to plug in JRebel, I've had to get around this problem to deploy some project EARs exploded. This project was running on 4.2.2.GA, but it's something we might want to keep in mind to test eventually with this project.
http://community.jboss.org/message/364004
I suppose if I ran into the problem today, I could just use ShrinkWrap as well.
-
23. Re: Courting Fakereplace to JBoss.org
cwash Jun 8, 2010 2:30 PM (in response to alrubinger)Haha!
SwitchBabe or Switchblade?
-
24. Re: Courting Fakereplace to JBoss.org
swd847 Jun 8, 2010 4:25 PM (in response to dan.j.allen)Dan Allen wrote:
Would it be possible to advise the developer when a formal redeploy of the application is recommended?
This is on the todo list (currently you just get a stack trace).
-
25. Re: Courting Fakereplace to JBoss.org
swd847 Jun 8, 2010 4:30 PM (in response to alrubinger)Byteswap is ok, but is it to close to Weblogic's fastswap?
-
26. Re: Courting Fakereplace to JBoss.org
swd847 Jun 9, 2010 5:25 PM (in response to alrubinger)Would it be possible to get a sticky thread on the seam forum about this to try and get some seam users using it? I use it on my seam projects at the moment, and it works pretty well, however I am sure that as soon as other people start using it bugs will be discovered.
Also with regard to the name I think retrokit or byteswap is the way to go. Yoink and Babeswap are cool but I don't think that they would be taken seriously.
-
27. Re: Courting Fakereplace to JBoss.org
dan.j.allen Jun 9, 2010 5:36 PM (in response to swd847)Stuart Douglas wrote:
Would it be possible to get a sticky thread on the seam forum about this to try and get some seam users using it? I use it on my seam projects at the moment, and it works pretty well, however I am sure that as soon as other people start using it bugs will be discovered.
Absolutely. I was looking for the best existing post to promote, but it's hard to decide which one. How about you draft a fresh post in the Seam 3 forums taking some verbiage from your blog entry and a big, bold link to the project page. Then we'll sticky that.
I can also notify thecore (an internal list of all JBoss employees) to drum up interest and attention.
Also with regard to the name I think retrokit or byteswap is the way to go. Yoink and Babeswap are cool but I don't think that they would be taken seriously.
+1. We don't want to risk sounding sexiest either. You usually need at least two names to take to legal, so I'll put retrokit (or retrofit) and byteswap into the legal filter and see what goes through.
-
28. Re: Courting Fakereplace to JBoss.org
aslak Jun 9, 2010 5:44 PM (in response to swd847)byteswap and byteman sitting in a tree.. "
-
29. Re: Courting Fakereplace to JBoss.org
swd847 Jun 19, 2010 11:21 PM (in response to swd847)A lot of the core class replacement functionality is now complete, although there are still a few corner cases where it will fail.
The biggest task now is creating integrations, so that frameworks will re-read annotations and adjust their configuration accordingly.
Currently I have:
- Seam 2 (this was easy because of the existing hot deploy support)
- JSF (this just involves clearing the EL cache so new methods/fields are resolvable via EL)
The main ones I have planned at the moment are:
- Jboss EJB
- Weld / Seam 3
- Resteasy
- Hibernate
I have no idea how hard these are going to be, but I plan on looking into all of them this week and picking the easiest one to start with.
Stuart