Glad to see it works for you!

About running via port 80, there are several ways to do. One of them is being discussed at
http://code.google.com/p/gbif-providertoolkit/issues/detail?id=817

Let us know if comment 6 would help, but I still need to attend to Julien's example(comment 10) ASAP, then we later organise this as part of IPT documentation.

Cheers,

Burke

On Jan 26, 2012, at 8:48 PM, Skofic A. Milko (Bioversity - HQ) wrote:

I just added the JAVA_HOME and the headless command to the plist and it works finally!!

Thanks a million, I bet there are a bunch of other applications that will need this.

A last question, I don't know much about the apache proxy business: do you know how to publish the site via port 80?

Thanks again very much!

Milko

Milko A. Škofič
Programme Specialist, Biodiversity Informatics Project
Understanding and Managing Biodiversity Programme
Bioversity International - Via dei Tre Denari, 472/a - 00057 Maccarese (RM) - ITALY
Tel: +39 06 6118286
Fax: +39 06 61979661



On Jan 25, 2012, at 17:38, Burke Chih-Jen Ko (GBIF) wrote:

Hi Milko and Tim,

I hope I could have come back a little bit earlier.

Mac OS X Server 10.6 runs Tomcat using launchd, so in /System/Library/LaunchDaemons you can find org.apache.tomcat.plist, which contains the settings the OS runs the default Tomcat server. When booting the OS try run Tomcat as a daemon as instructed by the plist. The Server Admin changes the value of the plist.

Here I attach 2 files, one is the working version of the plist on my Mac OS X Server 10.6, the other is the wrapper script for launchd to call Tomcat. Please put the script in /Library/Tomcat/bin, make sure it's owned by _appserver:_appserveradm with file mode 775 (well at least this works for me). You can see that the "-Djava.awt.headless=true" that Tim mentioned is included.

So you can:
1. Stop Tomcat by checking off the Tomcat checkbox in the web service pane of the Server Admin, save;
2. Replace the attached files and check permissions;
3. Start Tomcat by checking the checkbox and save;
4. Watch the console log to see if there is any odd things.

I would then recommend that you deploy IPT using the tomcat app manager, by this way you can avoid some possible permission issues.

Let me know if this works for you.

Cheers,

Burke
<org.apache.tomcat.plist>
<tomcat-launchd.sh>

On Jan 25, 2012, at 6:44 PM, Tim Robertson wrote:

Hi again,

Tomcat is a server application, but the code is using certain Java classes for the Rich Text Format generation which seemingly need to be instructed to run in headless mode - as the original error provided told us.  

What are the new errors you are seeing?  If you can provide stack traces we will be better able to diagnose and help you.

Cheers,
Tim


On Jan 25, 2012, at 11:38 AM, Skofic A. Milko (Bioversity - HQ) wrote:

I tried that, but it still doesn't work, I get other errors however.
In any case I don't think that is the issue, since Tomcat is a server application, so the concept of having a keyboard and screen should not apply. I tried the example applications that came with Tomcat and they all work perfectly, so I really don't understand what is missing...

Milko A. Škofič
Programme Specialist, Biodiversity Informatics Project
Understanding and Managing Biodiversity Programme
Bioversity International - Via dei Tre Denari, 472/a - 00057 Maccarese (RM) - ITALY
Tel: +39 06 6118286
Fax: +39 06 61979661



On Jan 25, 2012, at 9:16, Tim Robertson wrote:

Hi Milko

I am afraid I have not, but looking at the error:

Caused by: java.lang.InternalError: Can't connect to window server - not enough permissions.
and a bit of googling looks like you might need to set java.awt.headless=true to overcome this (headless means you tell Java that it is running on a machine in which the display, keyboard or mouse is lacking).

This would need to go into the Tomcat config but I am afraid I don't know where that is on OSX Server.

Hope this helps,
Tim




On Jan 24, 2012, at 5:49 PM, Skofic A. Milko (Bioversity - HQ) wrote:

Has anyone managed to make IPT run under Mac OS X Server 10.6.8 using the defaut installed Tomcat?
In my case the installation works fine, but when I go to the site I get a bunch of errors. I am able to run the IPT with Jetty and if I made another installation of Tomcat I suspect it would also work, but that is just what I don't want to do: I would like to use the default installation. Any ideas?


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

Unable to instantiate Action, org.gbif.ipt.action.portal.HomeAction,  defined for '' in namespace '/'Caught Exception while registering Interceptor class org.gbif.ipt.struts2.SetupAndCancelInterceptor
	com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:318)
	com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
	com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
	org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
	org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:66)
	com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

Caught Exception while registering Interceptor class org.gbif.ipt.struts2.SetupAndCancelInterceptor - interceptor - file:/Library/Tomcat/webapps/ipt/WEB-INF/classes/struts.xml:50:95
	com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:213)
	com.google.inject.struts2.Struts2Factory.superBuildInterceptor(Struts2Factory.java:166)
	com.google.inject.struts2.Struts2Factory.access$200(Struts2Factory.java:45)
	com.google.inject.struts2.Struts2Factory$ProvidedInterceptor.inject(Struts2Factory.java:201)
	com.google.inject.struts2.Struts2Factory.createInjector(Struts2Factory.java:140)
	com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:104)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
	com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
	com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
	com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
	org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
	org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:66)
	com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

root cause

com.google.inject.ProvisionException: Guice provision errors:

1) Error injecting constructor, java.lang.InternalError: Can't connect to window server - not enough permissions.
  at org.gbif.ipt.task.Eml2Rtf.<init>(Eml2Rtf.java:75)
  at org.gbif.ipt.task.Eml2Rtf.class(Eml2Rtf.java:75)
  while locating org.gbif.ipt.task.Eml2Rtf
    for parameter 13 at org.gbif.ipt.service.manage.impl.ResourceManagerImpl.<init>(ResourceManagerImpl.java:127)
  at org.gbif.ipt.service.manage.impl.ResourceManagerImpl.class(ResourceManagerImpl.java:108)
  while locating org.gbif.ipt.service.manage.impl.ResourceManagerImpl
  while locating org.gbif.ipt.service.manage.ResourceManager
    for parameter 2 at org.gbif.ipt.service.admin.impl.UserAccountManagerImpl.<init>(UserAccountManagerImpl.java:65)
  at org.gbif.ipt.service.admin.impl.UserAccountManagerImpl.class(UserAccountManagerImpl.java:54)
  while locating org.gbif.ipt.service.admin.impl.UserAccountManagerImpl
  while locating org.gbif.ipt.service.admin.UserAccountManager
    for parameter 3 at org.gbif.ipt.config.ConfigManagerImpl.<init>(ConfigManagerImpl.java:64)
  at org.gbif.ipt.config.ConfigManagerImpl.class(ConfigManagerImpl.java:64)
  while locating org.gbif.ipt.config.ConfigManagerImpl
  while locating org.gbif.ipt.service.admin.ConfigManager
    for field at org.gbif.ipt.struts2.SetupAndCancelInterceptor.configManager(SetupAndCancelInterceptor.java:21)
  while locating org.gbif.ipt.struts2.SetupAndCancelInterceptor
Caused by: java.lang.InternalError: Can't connect to window server - not enough permissions.
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1827)
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1724)
	at java.lang.Runtime.loadLibrary0(Runtime.java:823)
	at java.lang.System.loadLibrary(System.java:1045)
	at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Toolkit.loadLibraries(Toolkit.java:1605)
	at java.awt.Toolkit.<clinit>(Toolkit.java:1627)
	at java.awt.Color.<clinit>(Color.java:263)
	at org.gbif.ipt.task.Eml2Rtf.<init>(Eml2Rtf.java:77)
	at org.gbif.ipt.task.Eml2Rtf$$FastClassByGuice$$cad0309a.newInstance(<generated>)
	at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
	at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:737)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:737)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:737)
	at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)
	at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
	at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
	at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
	at com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:108)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	at com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:191)
	at com.google.inject.struts2.Struts2Factory.superBuildInterceptor(Struts2Factory.java:166)
	at com.google.inject.struts2.Struts2Factory.access$200(Struts2Factory.java:45)
	at com.google.inject.struts2.Struts2Factory$ProvidedInterceptor.inject(Struts2Factory.java:201)
	at com.google.inject.struts2.Struts2Factory.createInjector(Struts2Factory.java:140)
	at com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:104)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	at com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
	at com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
	at com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
	at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
	at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
	at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:66)
	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:680)

2) Error injecting constructor, java.lang.NoClassDefFoundError: Could not initialize class java.awt.Color
  at org.gbif.ipt.task.Eml2Rtf.<init>(Eml2Rtf.java:75)
  at org.gbif.ipt.task.Eml2Rtf.class(Eml2Rtf.java:75)
  while locating org.gbif.ipt.task.Eml2Rtf
    for parameter 13 at org.gbif.ipt.service.manage.impl.ResourceManagerImpl.<init>(ResourceManagerImpl.java:127)
  at org.gbif.ipt.service.manage.impl.ResourceManagerImpl.class(ResourceManagerImpl.java:108)
  while locating org.gbif.ipt.service.manage.impl.ResourceManagerImpl
  while locating org.gbif.ipt.service.manage.ResourceManager
    for parameter 4 at org.gbif.ipt.config.ConfigManagerImpl.<init>(ConfigManagerImpl.java:64)
  at org.gbif.ipt.config.ConfigManagerImpl.class(ConfigManagerImpl.java:64)
  while locating org.gbif.ipt.config.ConfigManagerImpl
  while locating org.gbif.ipt.service.admin.ConfigManager
    for field at org.gbif.ipt.struts2.SetupAndCancelInterceptor.configManager(SetupAndCancelInterceptor.java:21)
  while locating org.gbif.ipt.struts2.SetupAndCancelInterceptor
Caused by: java.lang.NoClassDefFoundError: Could not initialize class java.awt.Color
	at org.gbif.ipt.task.Eml2Rtf.<init>(Eml2Rtf.java:77)
	at org.gbif.ipt.task.Eml2Rtf$$FastClassByGuice$$cad0309a.newInstance(<generated>)
	at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
	at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:737)
	at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
	at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:737)
	at com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53)
	at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)
	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
	at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
	at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
	at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
	at com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:108)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	at com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:191)
	at com.google.inject.struts2.Struts2Factory.superBuildInterceptor(Struts2Factory.java:166)
	at com.google.inject.struts2.Struts2Factory.access$200(Struts2Factory.java:45)
	at com.google.inject.struts2.Struts2Factory$ProvidedInterceptor.inject(Struts2Factory.java:201)
	at com.google.inject.struts2.Struts2Factory.createInjector(Struts2Factory.java:140)
	at com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:104)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	at com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
	at com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
	at com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
	at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
	at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
	at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:66)
	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:680)

2 errors
	com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987)
	com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
	com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:108)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:191)
	com.google.inject.struts2.Struts2Factory.superBuildInterceptor(Struts2Factory.java:166)
	com.google.inject.struts2.Struts2Factory.access$200(Struts2Factory.java:45)
	com.google.inject.struts2.Struts2Factory$ProvidedInterceptor.inject(Struts2Factory.java:201)
	com.google.inject.struts2.Struts2Factory.createInjector(Struts2Factory.java:140)
	com.google.inject.struts2.Struts2Factory.buildBean(Struts2Factory.java:104)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:161)
	com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:150)
	com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:120)
	com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:299)
	com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:399)
	com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198)
	org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
	org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
	org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:66)
	com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.32 logs.


Apache Tomcat/6.0.32



Milko A. Škofič
Programme Specialist, Biodiversity Informatics Project
Understanding and Managing Biodiversity Programme
Bioversity International - Via dei Tre Denari, 472/a - 00057 Maccarese (RM) - ITALY
Tel: +39 06 6118286
Fax: +39 06 61979661



_______________________________________________
IPT mailing list
IPT@lists.gbif.org
http://lists.gbif.org/mailman/listinfo/ipt



_______________________________________________
IPT mailing list
IPT@lists.gbif.org
http://lists.gbif.org/mailman/listinfo/ipt