Sorry for the post, it actually does not work, disregard the post since it's wrong... sorry...

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
E-mail: m.skofic@cgiar.org
Tel: +39 06 6118286
Fax: +39 06 61979661



On Jan 27, 2012, at 11:12, Skofic A. Milko (Bioversity - HQ) wrote:

I managed to enable the proxy, but with a different twist.
On Mac OS X server there is a application that is used to administer the server, if you modify directly the apache files it could be that the changes will be overwritten next time you use the Server Admin application, so either you know which files to change or you do it in the application.
I chose to do it with the application, so after some googling I found a solution that worked for me; note that I have no clue how to configure proxies on Apache, so it must have been out of luck :-)

In Server Admin:

  • open the Web option
  • either create or select the site that clients are going to access (in other words the one most likely on port 80)
  • in the General pane set the host and port, the rest can stay as it is
  • the Options, Realms, Logging, Security and Aliases panes are not relevant to the reverse proxy, so they can stay as is
  • in the Proxy pane:
    • Enable Enable Reverse Proxy checkbox
    • In the Proxy Path leave the entry as is (should be /)
    • Leave the Sticky Session Identifier empty
    • Create an entry in the Balancer Members list by clicking the + button:
      • Put the url by which you access the IPT site under Tomcat (for instance http://127.0.0.1:8080/ipt/ )
      • Leave the Route and the Load Factor fields empty.

Save your changes and it should work, at least it did for me.

I originally got the inspiration for this at https://discussions.apple.com/thread/2367041?start=0&tstart=0

Hope this helps others... 


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 26, 2012, at 16:02, Burke Chih-Jen Ko (GBIF) wrote:

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

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




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