geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan (JIRA)" <j...@apache.org>
Subject [jira] Commented: (GERONIMO-4141) The war exported as a geronimo plugin in admin console cannot be installed with install-plugin command of deploy.bat|.sh
Date Mon, 10 Nov 2008 09:30:44 GMT

    [ https://issues.apache.org/jira/browse/GERONIMO-4141?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12646208#action_12646208
] 

Ivan commented on GERONIMO-4141:
--------------------------------

I guess we should support this feature, to export the war, then deploy it as a plug-in.  So
that the users could deliver their products more conveniently.

I do some troubleshooting on this issue, the export war file contains all the configuration
information that needed as a Geronimo plugin. The reason that the deployment failed is that
while we install the war file to the repository, the ArtifactTypeHandler we use is the default
one, not the expected UnpackArtifactTypeHandler, for the artifact type is war, not the car.
I can think there maybe two solutions for it :
a. While installing the plugin, since we are sure that the currently file is sufficient to
be a plugin (or an exception will throw in the previous codes.), we could just build a fake
Artifact (set its type with car), then Maven2Repository will handle it like a car file. I
have tried it, it  works.
b. While we export the war file, we changed the type to car, so what the user gets is a truely
plugin. So later, it should be imported successfully with the install-plugin command.
>From my side, the "a"  is simple, but it seems to be a little strange. the "b" is more
reasonable, but I am not sure whether it is feasiable.
Please give some comments, or there is a better way to do it .
Thanks !




> The war exported as a geronimo plugin in admin console cannot be installed with install-plugin
command of deploy.bat|.sh
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: GERONIMO-4141
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4141
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>    Affects Versions: 2.1, 2.1.1, 2.1.2, 2.1.3
>         Environment: SLES 10 SP2, JDK 1.5.0
>            Reporter: Forrest Xia
>            Assignee: Lin Sun
>            Priority: Minor
>             Fix For: 2.1.4
>
>         Attachments: jsp-examples-2.1.0.0.war, jsp-examples-war-2.1-SNAPSHOT.war
>
>
> Steps:
> 1. install a war
> 2. export the war as a G plugin with admin console's export plugin function
> 3. undeploy it thru console, and use deployer install-plugin command to install the exported
war
> Results: The installation failed with message like this "installation FAILED: start of
org.apache.geronimo.samples/cviewer/2.1.0.0/war failed".
> The server log includes these exceptions:
> "17:12:38,335 ERROR [GBeanInstance] Problem in doFail of samples/cviewer/2.1.0.0/war?J2EEApplication=null,j2eeType=WebModule,name=samples/cviewer/2.1.0.0/war
> java.lang.NullPointerException
>         at org.apache.geronimo.tomcat.TomcatContainer.removeContext(TomcatContainer.java:380)
>         at org.apache.geronimo.tomcat.TomcatWebAppContext.doFail(TomcatWebAppContext.java:540)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:1028)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:268)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:541)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:111)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:146)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:120)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:176)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:254)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:294)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:124)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:555)
>         at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:379)
>         at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:456)
>         at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:187)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:543)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:684)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:877)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean$4.run(PluginInstallerGBean.java:787)
>         at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
>         at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:810)
> 17:12:38,338 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED
state: abstractName="samples/cviewer/2.1.0.0/war?J2EEApplication=null,j2eeType=WebModule,name=samples/cviewer/2.1.0.0/war"
> java.lang.NullPointerException
>         at java.io.File.<init>(File.java:220)
>         at org.apache.catalina.core.StandardContext.getBasePath(StandardContext.java:4809)
>         at org.apache.catalina.core.StandardContext.getServletContext(StandardContext.java:1653)
>         at org.apache.geronimo.tomcat.GeronimoStandardContext.setContextProperties(GeronimoStandardContext.java:104)
>         at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:283)
>         at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:512)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:998)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:268)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:541)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:111)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:146)
>         at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:120)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:176)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
>         at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:254)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:294)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:124)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:555)
>         at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:379)
>         at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:456)
>         at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:187)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:543)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:684)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:877)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean$4.run(PluginInstallerGBean.java:787)
>         at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
>         at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:810)
> 17:12:38,344 ERROR [PluginInstallerGBean] Unable to install plugin.
> org.apache.geronimo.kernel.config.LifecycleException: start of samples/cviewer/2.1.0.0/war
failed
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:579)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:543)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:684)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean.install(PluginInstallerGBean.java:877)
>         at org.apache.geronimo.system.plugin.PluginInstallerGBean$4.run(PluginInstallerGBean.java:787)
>         at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
>         at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:810)
> Caused by:
> org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception
>         at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:522)
>         at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:187)
>         at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
>         ... 9 more
> Caused by:
> org.apache.geronimo.gbean.InvalidConfigurationException: Configuration samples/cviewer/2.1.0.0/war
failed to start due to the following reasons:
>   The service J2EEApplication=null,j2eeType=WebModule,name=samples/cviewer/2.1.0.0/war
did not start for an unknown reason
>         at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:485)
>         ... 11 more
> 17:12:38,352 INFO  [DirectoryMonitor] Hot deployer notified that an artifact was removed:
samples/cviewer/2.1.0.0/war
> "
> Question: if a war(or a ear) module is not intent to be exported as geronimo plugin,
does it need to appear in the export plugin list? This will make user confused around what
geronimo plugin really is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message