Hi,
I've been trying to get Roller debuggable in Eclipse as described in
this thread by Adib. I've got a simple servlet project working using
the same method, but when it comes to Roller I can't get it deployed.
I'm using Roller 3.1, Eclipse 3.2 and Tomcat 5.5 on Ubuntu. I have no
problem deploying Roller as a Tomcat webapp on its own, but getting it
deployed and debuggable through Eclipse is a different matter. I have
set-up 'Dynamic Web Project' and followed the steps as provided by
Adib, but when I go to run/debug the application in Eclipse, Tomcat
fails to deploy the webapp. The roller.log reads:
ERROR 2007-10-24 17:12:00,824 StandardContext:listenerStart - Skipped
installing application listeners due to previous error(s)
ERROR 2007-10-24 17:14:44,385 StandardContext:listenerStart - Error
configuring application listener of class
org.apache.roller.ui.core.RollerContext
java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:365)
at java.util.Properties.load(Properties.java:293)
at org.apache.roller.ui.core.RollerContext.<init>(RollerContext.java:91)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at java.lang.Class.newInstance0(Class.java:350)
at java.lang.Class.newInstance(Class.java:303)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3713)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at
org.apache.catalina.core.StandardService.start(StandardService.java:448)
at
org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
ERROR 2007-10-24 17:14:44,393 StandardContext:listenerStart - Skipped
installing application listeners due to previous error(s)
If any Roller + Eclipse developers out there have any suggestions...
it would be greatly appreciated.
Cheers,
Richard
On 23/10/2007, Richard Jones <[EMAIL PROTECTED]> wrote:
> Many thanks guys!
>
> I'm going for Adib's method and I'm some making progress (although the
> 15 minutes past a long time ago ;-) I will post again when I either
> get it working or give-up and have a question.
>
> Thanks again.
>
> - Richard
>
>
> On 23/10/2007, Adib Saikali <[EMAIL PROTECTED]> wrote:
> > Hi Richard,
> >
> > I have done all my customization to Roller in Eclipse, including debug. You
> > should be able to get setup in about 15 minutes. Here is how I did it.
> >
> > Environment:
> > - Eclipse Europa, with web tooling
> > - Tomcat 6.0.13
> > - postgres 8.2.4
> > - windows xp
> > - roller 3.1
> >
> > Steps to create the setup.
> >
> > 1. Create Dynamic Web Project in Eclipse
> >
> > 2. from the roller unzip dir copy webapp\roller\* into WebContent in Eclipse
> >
> > 3. Create a source folder called resources
> >
> > 4. Move the contents of WebContent\WEB-INF\classes into the resources
> > folder. This way you can make changes to .properties files and eclipse will
> > put them automatically into WEB-INF\classes
> >
> > 5.Create a source folder for your code, and put your customizations there.
> > In my case I have only added models and changed some tags in roller for
> > example the calendar tag to change the arrow buttons on it. My favourite
> > method is to link the roller jars into the roller sources eclipse can do
> > easily, that way you can navigate through the roller code easisly via
> > eclipse shortcuts. Once I can navigate the code out I create my own models
> > in my own packages which don't interfer with roller, that way I don't have
> > to touch and recompile the roller intself.
> >
> > 6. If you want to make more major changes to roller, I would delete the
> > roller specific jar files from WEB-INF\lib and then unzip the source code
> > into a normal eclipse source folder, then hack on it as much as you want.
> >
> > 7. In WebContent\META-INF put a tomcat context.xml which points to your
> > local database
> >
> > 8. Right click on the projcet > Run AS > Server Application and you will be
> > able to do debugging, hot code replace and all other great stuff you are
> > used to doing with roller.
> >
> > hope this helps you
> > Adib
> >
> > -----Original Message-----
> > From: Richard Jones [mailto:[EMAIL PROTECTED]
> > Sent: Monday, October 22, 2007 9:54 PM
> > To: [email protected]
> > Subject: Debugging Roller in Eclipse
> >
> > Hi,
> >
> > I've been customizing Roller for a while now, and just wanted to know
> > if it's possible to set-up Roller to be debuggable in Eclipse. I've
> > got various (simpler) Java/Struts/Tomcat projects in Eclipse which I
> > can use the Eclipse built-in debugger, but I've never been able to get
> > Roller using it. Just wanted to know whether to continue trying to
> > get this working, or if it's not possible.
> >
> > Thanks in advance for your help.
> >
> > Cheers,
> >
> > Richard
> >
> >
> >
>