<!-- 
RSS generated by JIRA (6.3.15#6346-sha1:dbc023dd75cecacf443c4b235f66124b15f5c5fe) at Mon Jun 01 00:24:47 EDT 2015

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
For example:
https://issues.jboss.org/si/jira.issueviews:issue-xml/SEAMJMS-16/SEAMJMS-16.xml?field=key&amp;field=summary
-->
<rss version="0.92" >
<channel>
    <title>JBoss Issue Tracker</title>
    <link>https://issues.jboss.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>6.3.15</version>
        <build-number>6346</build-number>
        <build-date>03-02-2015</build-date>
    </build-info>

<item>
            <title>[SEAMJMS-16] Event to JMS to Event mapping behavior</title>
                <link>https://issues.jboss.org/browse/SEAMJMS-16</link>
                <project id="12311010" key="SEAMJMS">Seam JMS</project>
                    <description>&lt;p&gt;While working on seam jms, I&apos;ve noted the following behavior.&lt;/p&gt;

&lt;p&gt;java.lang.IllegalStateException: Singleton not set for BaseClassLoader@3479404a&lt;/p&gt;
{vfs:///apps/jboss/jboss-6.0.0.Final/server/all/conf/jboss-service.xml}
&lt;p&gt;	at org.jboss.weld.integration.provider.JBossSingletonProvider$EarSingleton.get(JBossSingletonProvider.java:59) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.Container.instance(Container.java:58) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.resolution.ResolvableBuilder.checkQualifier(ResolvableBuilder.java:209) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.resolution.ResolvableBuilder.addQualifier(ResolvableBuilder.java:174) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.resolution.ResolvableBuilder.addQualifierIfAbsent(ResolvableBuilder.java:184) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.manager.BeanManagerImpl.resolveObserverMethods(BeanManagerImpl.java:464) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:604) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:598) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.jboss.seam.jms.bridge.IngressMessageListener.onMessage(IngressMessageListener.java:45)&lt;br/&gt;
	at org.hornetq.jms.client.JMSMessageListenerWrapper.onMessage(JMSMessageListenerWrapper.java:91) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:822) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.hornetq.core.client.impl.ClientConsumerImpl.access$100(ClientConsumerImpl.java:46) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:940) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100) &lt;span class=&quot;error&quot;&gt;&amp;#91;:6.0.0.Final&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) &lt;span class=&quot;error&quot;&gt;&amp;#91;:1.6.0_22&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) &lt;span class=&quot;error&quot;&gt;&amp;#91;:1.6.0_22&amp;#93;&lt;/span&gt;&lt;br/&gt;
	at java.lang.Thread.run(Thread.java:662) &lt;span class=&quot;error&quot;&gt;&amp;#91;:1.6.0_22&amp;#93;&lt;/span&gt;&lt;/p&gt;

&lt;p&gt;This exception occurs when trying to fire an event with the contents of a JMS message.  The message listener in this case is instantiated from the portable extension and receives the bean manager as an argument in the constructor.  I am able to get as far as reading the data from JMS, but when firing the second event the above exception occurs.  I&apos;m not certain that this is a Weld problem, but it seem slike a good place to start based on the packages shown.&lt;/p&gt;</description>
                <environment></environment>
        <key id="12429700">SEAMJMS-16</key>
            <summary>Event to JMS to Event mapping behavior</summary>
                <type id="1" iconUrl="https://issues.jboss.org/images/icons/issuetypes/bug.png">Bug</type>
                                            <priority id="3" iconUrl="https://issues.jboss.org/images/icons/priorities/major.png">Major</priority>
                        <status id="6" iconUrl="https://issues.jboss.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="2">Rejected</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="meetoblivion">John Ament</reporter>
                        <labels>
                    </labels>
                <created>Thu, 3 Feb 2011 21:56:15 -0500</created>
                <updated>Thu, 24 Feb 2011 11:32:56 -0500</updated>
                            <resolved>Thu, 24 Feb 2011 11:32:43 -0500</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                <comments>
                            <comment id="12580107" author="alesj" created="Fri, 4 Feb 2011 05:22:28 -0500"  >&lt;p&gt;Looks like something doesn&apos;t properly switch TCCL context.&lt;br/&gt;
e.g. your current top level CL is from jboss-service.xml, which is what is the content of JBOSS_HOME/common/lib&lt;br/&gt;
Where it should really point to your app&apos;s CL.&lt;/p&gt;</comment>
                            <comment id="12580110" author="meetoblivion" created="Fri, 4 Feb 2011 05:36:56 -0500"  >&lt;p&gt;At least in what&apos;s currently in there, all components are in the same class loader/deployment, so a classloader problem would be a really bizarre one.&lt;/p&gt;</comment>
                            <comment id="12580115" author="alesj" created="Fri, 4 Feb 2011 05:45:03 -0500"  >&lt;p&gt;OK, I guess you&apos;re not bundling HornetQ, which is where all of this starts.&lt;br/&gt;
It looks like org.jboss.seam.jms.bridge.IngressMessageListener.onMessage should switch the TCCL to app&apos;s CL.&lt;/p&gt;

&lt;p&gt;Skywalker:lib alesj$ pwd&lt;br/&gt;
/Users/alesj/jboss/build/target/jboss-6.1.0-SNAPSHOT/common/lib&lt;br/&gt;
Skywalker:lib alesj$ ls | grep hornetq&lt;br/&gt;
hornetq-bootstrap.jar&lt;br/&gt;
hornetq-core.jar&lt;br/&gt;
hornetq-jboss-as-integration.jar&lt;br/&gt;
hornetq-jms.jar&lt;br/&gt;
hornetq-logging.jar&lt;br/&gt;
jboss-as-hornetq-int.jar&lt;br/&gt;
Skywalker:lib alesj$ &lt;/p&gt;

&lt;p&gt;Hence jboss-service.xml&apos;s CL is used &amp;#8211; this is where HornetQ comes in.&lt;/p&gt;</comment>
                            <comment id="12580122" author="meetoblivion" created="Fri, 4 Feb 2011 06:24:44 -0500"  >&lt;p&gt;HornetQ&apos;s not embedded in my deployment.  It&apos;s deployed as a war file.  These are my only libraries:&lt;/p&gt;

&lt;p&gt;jboss-logging-3.0.0.Beta4.jar     seam-solder-api-3.0.0.Beta1.jar&lt;br/&gt;
seam-jms-api-3.0.0-SNAPSHOT.jar   slf4j-api-1.5.10.jar&lt;br/&gt;
seam-jms-impl-3.0.0-SNAPSHOT.jar&lt;/p&gt;</comment>
                            <comment id="12580124" author="meetoblivion" created="Fri, 4 Feb 2011 06:31:22 -0500"  >&lt;p&gt;in case it helps, this is the code that creates the listener:&lt;/p&gt;

&lt;p&gt;    private void createListener(final AfterBeanDiscovery abd, final BeanManager beanManager, final Route route, ConnectionFactory cf) {&lt;br/&gt;
        for(Destination d : route.getDestinations()) {&lt;br/&gt;
            try&lt;/p&gt;
{
                Connection conn = cf.createConnection();
                Session session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
                MessageConsumer cons = session.createConsumer(d);
                cons.setMessageListener(new IngressMessageListener(beanManager, route));
                conn.start();
            }
&lt;p&gt; catch (JMSException e) &lt;/p&gt;
{
                log.error(&quot;Error creating listener&quot;,e);
            }
&lt;p&gt;        }&lt;br/&gt;
    }&lt;/p&gt;</comment>
                            <comment id="12583050" author="meetoblivion" created="Thu, 17 Feb 2011 12:00:51 -0500"  >&lt;p&gt;Rejecting issue.  This is apparently as defined by spec, so cannot be fixed.&lt;/p&gt;</comment>
                            <comment id="12583230" author="pmuir" created="Fri, 18 Feb 2011 06:24:08 -0500"  >&lt;p&gt;Reopening, I don&apos;t understand what is spec required about this? Also, this is certainly fixable in JBoss AS, even if we have to do something complex to get there.&lt;/p&gt;</comment>
                            <comment id="12584383" author="meetoblivion" created="Thu, 24 Feb 2011 07:14:09 -0500"  >&lt;p&gt;Realized last night (with help from Stuart Douglas) that this issue (with TCCL) was being cauesd by hornetq sending messages outside of the application.  By passing in the context class loader from another bean, we can set the class loader within the on message method, then set it back in a finally block.  This allows the body of the on message to be executed within the app&apos;s class loader, fixing any issues with bean resolution.&lt;/p&gt;</comment>
                            <comment id="12584487" author="pmuir" created="Thu, 24 Feb 2011 11:11:07 -0500"  >&lt;p&gt;John, I obviously failed to explain this well to you, as this is what I was getting at when we were chatting ;- Sorry about that!&lt;/p&gt;</comment>
                            <comment id="12584488" author="pmuir" created="Thu, 24 Feb 2011 11:11:08 -0500"  >&lt;p&gt;John, I obviously failed to explain this well to you, as this is what I was getting at when we were chatting ;- Sorry about that!&lt;/p&gt;</comment>
                            <comment id="12584505" author="meetoblivion" created="Thu, 24 Feb 2011 11:32:43 -0500"  >&lt;p&gt;Rejecting, as this was a development issue that was believed by the dev to be a weld problem but is really a CL issue.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_12310141" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 4 Feb 2011 05:22:28 -0500</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_12310540" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Global Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>71680</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_12310641" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12310640" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>11.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12311940" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|1094t4:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12310840" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>53392</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_12310142" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                            </customfields>
    </item>
</channel>
</rss>