[
https://issues.apache.org/jira/browse/GERONIMO-3220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aman Nanner closed GERONIMO-3220.
---------------------------------
Resolution: Invalid
Invalid bug. The problem was something else.
> In-place deployment fails during discovery of web services
> ----------------------------------------------------------
>
> Key: GERONIMO-3220
> URL: https://issues.apache.org/jira/browse/GERONIMO-3220
> Project: Geronimo
> Issue Type: Bug
> Security Level: public(Regular issues)
> Components: deployment
> Affects Versions: 2.0-M6
> Environment: Windows XP SP2
> Reporter: Aman Nanner
> Fix For: 2.0-M6
>
>
> Inplace deployment of our application fails during discovery of web services.
> This seems to be due to a bug in the following code in
> {{org.apache.geronimo.jaxws.builder.JAXWSServiceBuilder}}:
> {code}
> private List<Class> discoverWebServices(JarFile moduleFile,
> boolean isEJB)
>
> throws DeploymentException {
> LOG.debug("Discovering web service classes");
> File tmpDir = null;
> List<URL> urlList = new ArrayList<URL>();
> if (isEJB) {
> File jarFile = new File(moduleFile.getName());
> try {
> urlList.add(jarFile.toURL());
> } catch (MalformedURLException e) {
> // this should not happen
> throw new DeploymentException();
> }
> } else {
> /*
> * Can't get ClassLoader to load nested Jar files, so
> * unpack the module Jar file and discover all nested Jar files
> * within it and the classes/ directory.
> */
> try {
> tmpDir = DeploymentUtil.createTempDir();
> /*
> * This is needed becuase DeploymentUtil.unzipToDirectory()
> * always closes the passed JarFile.
> */
> JarFile module = new JarFile(moduleFile.getName());
> DeploymentUtil.unzipToDirectory(module, tmpDir);
> } catch (IOException e) {
> if (tmpDir != null) {
> DeploymentUtil.recursiveDelete(tmpDir);
> }
> throw new DeploymentException("Failed to expand the module
> archive", e);
> }
> .....
> }
> {code}
> The exception is thrown at the line {{JarFile module = new
> JarFile(moduleFile.getName());}}. This code seems to assume that the
> moduleFile is a packed JAR file, when in fact it is a directory in this case.
> This line throws an "Access Denied" exception when trying to create the JAR
> file out of a directory.
> The following is a stack trace from the debugger:
> {code}
> System Thread [RMI TCP Connection(1337)-192.168.12.66] (Suspended (breakpoint
> at line 123 in JAXWSServiceBuilder))
> Axis2Builder(JAXWSServiceBuilder).discoverPOJOWebServices(Module, Map,
> Map<String,PortInfo>) line: 123
> Axis2Builder(JAXWSServiceBuilder).discoverWebServices(Module, boolean,
> Map) line: 108
> Axis2Builder(JAXWSServiceBuilder).findWebServices(Module, boolean, Map,
> Environment, Map) line: 90
> JAXWSServiceBuilder$$FastClassByCGLIB$$5b2252ff.invoke(int, Object,
> Object[]) line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(int, Object[]) line: 828
> RawInvoker.invoke(int, Object[]) line: 57
> RawOperationInvoker.invoke(AbstractName, Object[]) line: 35
> ProxyMethodInterceptor.intercept(Object, Method, Object[], MethodProxy)
> line: 96
> WebServiceBuilder$$EnhancerByCGLIB$$1b64aadc.findWebServices(Module,
> boolean, Map, Environment, Map) line: not available
>
> TomcatModuleBuilder(AbstractWebModuleBuilder).basicInitContext(EARContext,
> Module, XmlObject, boolean) line: 350
> TomcatModuleBuilder.initContext(EARContext, Module, ClassLoader) line:
> 300
> TomcatModuleBuilder$$FastClassByCGLIB$$6f85ec2c.invoke(int, Object,
> Object[]) line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(int, Object[]) line: 828
> RawInvoker.invoke(int, Object[]) line: 57
> RawOperationInvoker.invoke(AbstractName, Object[]) line: 35
> ProxyMethodInterceptor.intercept(Object, Method, Object[], MethodProxy)
> line: 96
> ModuleBuilder$$EnhancerByCGLIB$$1ed19bb9.initContext(EARContext,
> Module, ClassLoader) line: not available
> SwitchingModuleBuilder.initContext(EARContext, Module, ClassLoader)
> line: 159
> SwitchingModuleBuilder$$FastClassByCGLIB$$d0c31844.invoke(int, Object,
> Object[]) line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(int, Object[]) line: 828
> RawInvoker.invoke(int, Object[]) line: 57
> RawOperationInvoker.invoke(AbstractName, Object[]) line: 35
> ProxyMethodInterceptor.intercept(Object, Method, Object[], MethodProxy)
> line: 96
> ModuleBuilder$$EnhancerByCGLIB$$1ed19bb9.initContext(EARContext,
> Module, ClassLoader) line: not available
> EARConfigBuilder.buildConfiguration(boolean, Artifact, Object, JarFile,
> Collection, ArtifactResolver, ConfigurationStore) line: 564
> EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(int, Object,
> Object[]) line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(int, Object[]) line: 828
> RawInvoker.invoke(int, Object[]) line: 57
> RawOperationInvoker.invoke(AbstractName, Object[]) line: 35
> ProxyMethodInterceptor.intercept(Object, Method, Object[], MethodProxy)
> line: 96
>
> CorbaGBeanNameSource$$EnhancerByCGLIB$$55ff15ce.buildConfiguration(boolean,
> Artifact, Object, JarFile, Collection, ArtifactResolver, ConfigurationStore)
> line: not available
> Deployer.deploy(boolean, File, File, File, boolean, String, String,
> String, String, String, String, String, String) line: 302
> Deployer.deploy(boolean, File, File, String) line: 124
> Deployer$$FastClassByCGLIB$$734a235d.invoke(int, Object, Object[])
> line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(String, Object[], String[]) line: 863
> BasicKernel.invoke(AbstractName, String, Object[], String[]) line: 239
> KernelGBean.invoke(AbstractName, String, Object[], String[]) line: 342
> KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(int, Object, Object[])
> line: not available
> FastMethod.invoke(Object, Object[]) line: 53
> FastMethodInvoker.invoke(Object, Object[]) line: 38
> GBeanOperation.invoke(Object, Object[]) line: 127
> GBeanInstance.invoke(String, Object[], String[]) line: 863
> BasicKernel.invoke(AbstractName, String, Object[], String[]) line: 239
> MBeanGBeanBridge.invoke(String, Object[], String[]) line: 168
> MetaDataImpl$PrivateDynamicMeta(DynamicMetaDataImpl).invoke(Object,
> String, Object[], String[]) line: 213
> MetaDataImpl.invoke(Object, String, Object[], String[]) line: 220
> DefaultMBeanServerInterceptor.invoke(ObjectName, String, Object[],
> String[]) line: 815
> JmxMBeanServer.invoke(ObjectName, String, Object[], String[]) line: 784
> RMIConnectionImpl.doOperation(int, Object[]) line: 1408
> RMIConnectionImpl.access$100(RMIConnectionImpl, int, Object[]) line: 81
> RMIConnectionImpl$PrivilegedOperation.run() line: 1245
> AccessController.doPrivileged(PrivilegedExceptionAction<T>,
> AccessControlContext) line: not available [native method]
> RMIConnectionImpl.doPrivilegedOperation(int, Object[], Subject) line:
> 1348
> RMIConnectionImpl.invoke(ObjectName, String, MarshalledObject,
> String[], Subject) line: 782
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
> Method.invoke(Object, Object...) line: 585
> UnicastServerRef2(UnicastServerRef).dispatch(Remote, RemoteCall) line:
> 294
> Transport$1.run() line: 153
> AccessController.doPrivileged(PrivilegedExceptionAction<T>,
> AccessControlContext) line: not available [native method]
> TCPTransport(Transport).serviceCall(RemoteCall) line: 149
> TCPTransport.handleMessages(Connection, boolean) line: 466
> TCPTransport$ConnectionHandler.run() line: 707
> Thread.run() line: 595
> {code}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.