1 2 3 Previous Next 35 Replies Latest reply on Jun 30, 2010 11:31 PM by dan.j.allen Go to original post
      • 15. Re: Courting Fakereplace to JBoss.org
        lightguard

        Not sure that last definition is a good one to be associated with.

        • 16. Re: Courting Fakereplace to JBoss.org
          dan.j.allen

          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

            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

              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

                ByteSwap is good too.

                • 20. Re: Courting Fakereplace to JBoss.org
                  alrubinger

                  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

                    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

                      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

                        Haha!

                         

                        SwitchBabe or Switchblade?

                        • 24. Re: Courting Fakereplace to JBoss.org
                          swd847

                          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

                            Byteswap is ok, but is it to close to Weblogic's fastswap?

                            • 26. Re: Courting Fakereplace to JBoss.org
                              swd847

                              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

                                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

                                  byteswap and byteman sitting in a tree.. "

                                   

                                   

                                  • 29. Re: Courting Fakereplace to JBoss.org
                                    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