

After the reload, all changes in your JAXRS resources and (JAXB) representations will be picked up. You can trigger the HST-2 container to be reloaded when you touch (add a space and save) the hst-config.properties. However, there is a nicer workaround: Namely, when the HST-2 container gets reloaded, the CXF controller is reloaded as well. A restart of the application (no rebuild needed because JRebel did replace the classes) is then needed. This is because CXF only loads the annotations once. In this file, add the following line: rebel.cxf_plugin=false Reload JAXRS endpoint resources and (JAXB) representations without restartĪnnotations of JAXRS Resource Beans and (JAXB) representations do not get refreshed when they are changed and compiled, even with JRebel enabled.

It is stored in the file ~/.jrebel/jrebel.properties If there's no JRebel plugin for your IDE, you can also edit the JRebel configuration manually. You can also disable other plugins you do not need. Open the 'Plugins' section of the JRebel plugin configuration.This can be fixed by disabling the 'CXF' JRebel plugin: Disable JRebel CXF pluginįor some reason, after you have recompiled something and JRebel picks it up, the HST REST services do not work anymore. With the JRebel Eclipse plugin, this situation is remedied.

#JREBEL REVIEW CODE#
Thus you will not be able to set a breakpoint on that code and the stepping behaviour is impaired when you hit code the debugger is not yet familiar with. If you use JRebel in debug mode without it, then after you add some changes to your code, the debugger will get confused because it doesn't expect the new methods to appear. If you are an Eclipse user and want to debug your project while running JRebel at the same time, then you should consider installing the JRebel Eclipse Plugin. Debugging in Eclipse while running JRebel at the same time That way you can work with JRebel without having to use a command line tool. Instead of using a standalone installation of JRebel you can use the JRebel Plugin for the IDE of your choice. The javagent property can also be set directly from the command line without changing the project or settings.xml. For instance: mvn n -Djavaagent=-agentpath:/home/user/jrebel/lib/libjrebel64.dylib IDE plugin To run Cargo with JRebel enabled using the profile defined above, use the following command to run your project: mvn -P n -Djrebel The JRebel profile can be explicitly de-activated by running the Maven command with -P !jrebel. Otherwise rebel.xml files will be packaged with the wars of your distribution.

Note: When you are ready to create a project distribution, be sure you have a clean build without the JRebel profile activated. Open cms/target/classes/rebel.xml and site/target/classes/rebel.xml to see how JRebel is configured. JRebel descriptors for both CMS and site are generated, which means that class files and resources from either project are configured to be monitored for changes. To generate the JRebel descriptors, build your project using the following command: mvn verify -Djrebel This profile is activated by specifying the property jrebel. The Bloomreach Experience Manager Project POM provides a profile dedicated to generating and enabling JRebel while building and running a Bloomreach Experience Manager project. agentpath:/home/user/jrebel/lib/libjrebel64.dylib To use the JRebel Agent when running the project locally with Cargo, set the javaagent property in your ~/.m2/settings.xml Maven configuration settings or project. After downloading and unpacking, configure the JRebel Agent according to the settings found in the JRebel documentation. If you want to speed up this development cycle, then JRebel is a great tool to make that happen. Please refer to the documentation of the third-party development tool for the latest installation, configuration, and usage instructions.īuilding your web application and redeploying it every time you want to see the effects of the changes you made to your project's source code can be a time consuming process. Bloomreach cannot guarantee this documentation is up to date with the latest release of the third-party development tool. This documentation describes the use of a third-party development tool and is maintained by Bloomreach on a best-effort basis.
