[esb-issues] [JBoss JIRA] (JBESB-3855) IterableTimedCache expiry causes deployment issues with Camel non-core components

Tom Cunningham (JIRA) jira-events at lists.jboss.org
Fri Oct 12 13:38:02 EDT 2012


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

Tom Cunningham commented on JBESB-3855:
---------------------------------------

Robert Balent provided a patch to fix this issue in :

https://bugzilla.redhat.com/show_bug.cgi?id=780334

org.jboss.soa.esb.listeners.gateway.camel.JBossPackageScanClassResolver$MatchingClassVisitor

method: "visit(VirtualFile file)"

it could look like this. I compiled the class, tested and can't reproduce the problem anymore. Can somebody review my code?


public void visit(VirtualFile file) {
    if (file.getName().endsWith(".class")) {
        String fqn;
        try {
            fqn = file.toURL().toString();
        } catch (Exception ex) {
            fqn = file.getName();
        }
        String qn;

        if (fqn.indexOf("jar/") != -1) {
            qn = fqn.substring(fqn.indexOf("jar/") + 4);
        } else {
            qn = fqn;
        }

        addIfMatching(filter, qn, classes);
    }
}
                
> IterableTimedCache expiry causes deployment issues with Camel non-core components
> ---------------------------------------------------------------------------------
>
>                 Key: JBESB-3855
>                 URL: https://issues.jboss.org/browse/JBESB-3855
>             Project: JBoss ESB
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Deployment
>    Affects Versions: 4.11
>         Environment:  
>            Reporter: Tom Cunningham
>            Assignee: Tom Cunningham
>             Fix For: 4.11 CP1
>
>
> There's a problem with deployment of esb application, where the camel gateway is used .
> If is the application deployed right after the server start, there's no problem. But if you wait about 30-60 minutes, error occurs, and about 100 of this error message are shown:
> DEBUG [JBossPackageScanClassResolver] Cannot find class 'apache/camel/converter/stream/InputStreamCache.class' in any classloaders: [BaseClassLoader at 2444569{vfszip:/home/rbalent/qa/tests/quickstarts/tests/output/lib/Quickstart_camel_http.esb/}]
> To see the messages you must set log threshold to DEBUG.
> To reproduce it, just start server, deploy attached Quickstart_camel_http.esb, then you will see the correct message in server log:
> BEFORE**
> Camel HTTP Hello World!
> AFTER**
> Lines "BEFORE**", and "AFTER**" are added to find the message body in server log easier.
> then undeploy Quickstart_camel_http.esb and wait about 30-60 minutes. After this time, deploy the esb package again. You will see the mentioned lines in server log, and incorrect message body:
> The received message will look like this:
> BEFORE**
> java.io.ByteArrayInputStream at 6c515139AFTER**
> After server restart it works again.
> Quickstart_camel_http.esb, server log of successful deployment and failed deployment are attached.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the esb-issues mailing list