[jbosstools-issues] [JBoss JIRA] Issue Comment Edited: (JBIDE-8863) Error deploying EAR with a module having a sub-module in its component descriptor.

Andre Dietisheim (JIRA) jira-events at lists.jboss.org
Sat May 28 08:57:00 EDT 2011


    [ https://issues.jboss.org/browse/JBIDE-8863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12605078#comment-12605078 ] 

Andre Dietisheim edited comment on JBIDE-8863 at 5/28/11 8:56 AM:
------------------------------------------------------------------

the error is due to the fact that project2 (the proj nested into project1, which is again nested into the ear) shall be added to a jar (project1). The current code seems to be written to handle directories only (see AbstractServerToolsPublisher#fullPublish). 

IMHO the usecase where a further jar shall be nested into another jar should be added in there (most likely to LocalCopyCallback and all other ICallbackHandler implementors). Unfortunately it's is far from obvious to me how to achieve this. My basic 'problem' is that the current copy code has no reference to the parent project that I should check to see if its a jar.


      was (Author: adietish):
    the error is due to the fact that project2 (the proj nested into project1, which is again nested into the ear) shall be added to a jar (project1). The current code seems to be written to handle directories only (see AbstractServerToolsPublisher#fullPublish). IMHO the usecase where a further jar shall be nested into another jar should be added in here. Unfortunately how to achieve this is far from obvious to me. My basic 'problem' is that the current copy code has no reference to the parent project that I should check to see if its a jar.

  
> Error deploying EAR with a module having a sub-module in its component descriptor.
> ----------------------------------------------------------------------------------
>
>                 Key: JBIDE-8863
>                 URL: https://issues.jboss.org/browse/JBIDE-8863
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: JBossAS
>    Affects Versions: 3.2.0.Final
>         Environment: Tested with Eclipse Indigo Release 20110319-2305 with latest nightly build trunk of JBoss Tools.
> Deploying on a JBoss 4.2 server.
>            Reporter: Philippe Guinot
>            Assignee: Rob Stryker
>            Priority: Critical
>              Labels: component, deployment, descriptor, ear, eclipse, jar, module
>             Fix For: 3.2.1.CR1, 3.3.0.M2
>
>         Attachments: error-renaming-archive.png, recursive-projects.zip
>
>
> h3.Context:
> For some reasons I have to deploy an EAR webapp with (in its libs) a jar containing itself another jar.
> h3.Environment:
> For this I have a first Java project with the following component descriptor:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <project-modules id="moduleCoreId" project-version="1.5.0">
>     <wb-module deploy-name="project1">
>         <wb-resource deploy-path="/" source-path="/src/main/java"/>
>     </wb-module>
> </project-modules>
> {code}
> Then, the second Java project has the component descriptor:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <project-modules id="moduleCoreId" project-version="1.5.0">
>     <wb-module deploy-name="project2">
>         <wb-resource deploy-path="/" source-path="/src/main/java"/>
>         <dependent-module archiveName="project1.jar" deploy-path="/lib" handle="module:/resource/project1/project1">
>             <dependency-type>uses</dependency-type>
>         </dependent-module>
>     </wb-module>
> </project-modules>
> {code}
> Then, in Eclipse when exporting the *project2* as a *Module Archive*, I obtain a .jar file featuring both classes from *project2* and a *lib* folder with the project1 compiled jar.
> Now, in the ear project I have the following lines in the component descriptor:
> {code:xml}
>         <dependent-module archiveName=" project1.jar" deploy-path="/lib" handle="module:/resource/ project1/ project1">
>             <dependency-type>uses</dependency-type>
>         </dependent-module>
>         <dependent-module archiveName=" project2.jar" deploy-path="/lib" handle="module:/resource/ project2/ project2">
>             <dependency-type>uses</dependency-type>
>         </dependent-module>
> {code}
> (The EAR needs the 2 jars as well)
> h3.Problem:
> Then, when deployed into my *JBoss 4.2 Runtime* server in Eclipse, I got the following error:
> {code}
> Error renaming C:\DEV\jboss\server\default\tmp\jbosstoolsTemp\tmp7021855122707247750.jar to C:\DEV\jboss\server\default\deploy\EAR_Project.ear\lib\project2.jar\lib\project1.jar
> {code}
> !error-renaming-archive.png!
> After some research, I think an exception is thrown at *org.jboss.ide.eclipse.as.core.server.xpl.PublishCopyUtil.LocalCopyCallback.moveTempFile(File, File)* during the safe rename.
> However, when I look to the error message I got the feeling that the publishing process want to copy the tmp jar file into a folder called "C:\DEV\jboss\server\default\deploy\EAR_Project.ear\lib\project2.jar\lib\" which can not work because "C:\DEV\jboss\server\default\deploy\EAR_Project.ear\lib\project2.jar" is a file.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list