Skip to content

Commit ce03238

Browse files
committed
Refactoring some code to be more intuitive - all 5 tests work on WildFly beta2 snapshot and GlassFish 4
1 parent 049008b commit ce03238

File tree

7 files changed

+79
-66
lines changed

7 files changed

+79
-66
lines changed

jms/send-receive/src/main/java/org/javaee7/jms/send/receive/Resources.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,20 @@
1919
interfaceName = "javax.jms.Queue",
2020
destinationName="asyncQueue",
2121
description="My Async Queue"),
22-
@JMSDestinationDefinition(name = Resources.SYNC_QUEUE,
22+
@JMSDestinationDefinition(name = Resources.SYNC_APP_MANAGED_QUEUE,
2323
resourceAdapter = "jmsra",
2424
interfaceName = "javax.jms.Queue",
25-
destinationName="syncQueue",
26-
description="My Async Queue")
25+
destinationName="syncAppQueue",
26+
description="My Sync Queue for App-managed JMSContext") ,
27+
@JMSDestinationDefinition(name = Resources.SYNC_CONTAINER_MANAGED_QUEUE,
28+
resourceAdapter = "jmsra",
29+
interfaceName = "javax.jms.Queue",
30+
destinationName="syncContainerQueue",
31+
description="My Sync Queue for Container-managed JMSContext")
2732
})
2833
public class Resources {
29-
public static final String SYNC_QUEUE = "java:global/jms/mySyncQueue";
34+
public static final String SYNC_APP_MANAGED_QUEUE = "java:global/jms/mySyncAppQueue";
35+
public static final String SYNC_CONTAINER_MANAGED_QUEUE = "java:global/jms/mySyncContainerQueue";
3036
public static final String ASYNC_QUEUE = "java:global/jms/myAsyncQueue";
3137
public static final String CLASSIC_QUEUE = "java:global/jms/classicQueue";
3238
}

jms/send-receive/src/main/java/org/javaee7/jms/send/receive/simple/MessageReceiverSync.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,10 @@ public class MessageReceiverSync {
5757
@Inject
5858
private JMSContext context;
5959

60-
@Resource(mappedName=Resources.SYNC_QUEUE)
60+
@Resource(mappedName=Resources.SYNC_CONTAINER_MANAGED_QUEUE)
6161
Queue myQueue;
6262

6363
public String receiveMessage() {
64-
String message = context.createConsumer(myQueue).receiveBody(String.class, 1000);
65-
return message;
64+
return context.createConsumer(myQueue).receiveBody(String.class, 1000);
6665
}
6766
}

jms/send-receive/src/main/java/org/javaee7/jms/send/receive/simple/MessageSenderSync.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
import org.javaee7.jms.send.receive.Resources;
4949

5050
/**
51-
* Synchronous message seding with container-managed JMSContext.
51+
* Synchronous message sending with container-managed JMSContext.
5252
* @author Arun Gupta
5353
*/
5454
@Stateless
@@ -58,7 +58,7 @@ public class MessageSenderSync {
5858
// @JMSConnectionFactory("java:comp/DefaultJMSConnectionFactory")
5959
JMSContext context;
6060

61-
@Resource(mappedName=Resources.SYNC_QUEUE)
61+
@Resource(mappedName=Resources.SYNC_CONTAINER_MANAGED_QUEUE)
6262
Queue syncQueue;
6363

6464
public void sendMessage(String message) {
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package org.javaee7.jms.send.receive.simple.appmanaged;
2+
3+
import javax.annotation.Resource;
4+
import javax.ejb.Stateless;
5+
import javax.jms.ConnectionFactory;
6+
import javax.jms.JMSContext;
7+
import javax.jms.Queue;
8+
import org.javaee7.jms.send.receive.Resources;
9+
10+
/**
11+
* @author Arun Gupta
12+
*/
13+
@Stateless
14+
public class MessageReceiverAppManaged {
15+
16+
@Resource
17+
private ConnectionFactory factory;
18+
19+
@Resource(mappedName=Resources.SYNC_APP_MANAGED_QUEUE)
20+
Queue myQueue;
21+
22+
public String receiveMessage() {
23+
try (JMSContext context = factory.createContext()) {
24+
return context.createConsumer(myQueue).receiveBody(String.class, 1000);
25+
}
26+
}
27+
}

jms/send-receive/src/main/java/org/javaee7/jms/send/receive/simple/appmanaged/MessageSenderAppManaged.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class MessageSenderAppManaged {
1919
@Resource
2020
private ConnectionFactory factory;
2121

22-
@Resource(mappedName=Resources.SYNC_QUEUE)
22+
@Resource(mappedName=Resources.SYNC_APP_MANAGED_QUEUE)
2323
Queue myQueue;
2424

2525
public void sendMessage(String message) {

jms/send-receive/src/test/java/org/javaee7/jms/send/receive/SyncTest.java

Lines changed: 37 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
import org.javaee7.jms.send.receive.simple.MessageReceiverSync;
1111
import org.javaee7.jms.send.receive.simple.MessageSenderSync;
12+
import org.javaee7.jms.send.receive.simple.appmanaged.MessageReceiverAppManaged;
1213
import org.javaee7.jms.send.receive.simple.appmanaged.MessageSenderAppManaged;
1314
import org.jboss.arquillian.container.test.api.Deployment;
1415
import org.jboss.arquillian.junit.Arquillian;
@@ -17,60 +18,63 @@
1718
import org.junit.runner.RunWith;
1819

1920
/**
20-
*
2121
* @author Patrik Dudits
2222
*/
2323
@RunWith(Arquillian.class)
2424
public class SyncTest {
25-
25+
26+
@EJB
27+
ClassicMessageSender classicSender;
28+
29+
@EJB
30+
ClassicMessageReceiver classicReceiver;
31+
2632
@EJB
2733
MessageSenderSync simpleSender;
28-
34+
2935
@EJB
3036
MessageReceiverSync simpleReceiver;
31-
32-
@EJB
33-
ClassicMessageSender classicSender;
34-
37+
3538
@EJB
36-
ClassicMessageReceiver classicReceiver;
37-
39+
MessageSenderAppManaged appManagedSender;
40+
3841
@EJB
39-
MessageSenderAppManaged appManaged;
40-
41-
@Test
42-
public void testSimpleApi() {
43-
String message = "The test message over JMS 2.0 API";
44-
simpleSender.sendMessage(message);
45-
46-
assertEquals(message, simpleReceiver.receiveMessage());
47-
}
48-
42+
MessageReceiverAppManaged appManagedReceiver;
43+
4944
@Test
5045
public void testClassicApi() {
5146
String message = "The test message over JMS 1.1 API";
5247
classicSender.sendMessage(message);
53-
54-
assertEquals(message, classicReceiver.receiveMessage());
48+
49+
assertEquals(message, classicReceiver.receiveMessage());
50+
}
51+
52+
@Test
53+
public void testContainerManagedJmsContext() {
54+
String message = "Test message over container-managed JMSContext";
55+
simpleSender.sendMessage(message);
56+
57+
assertEquals(message, simpleReceiver.receiveMessage());
5558
}
56-
59+
5760
@Test
5861
public void testAppManagedJmsContext() {
5962
String message = "The test message over app-managed JMSContext";
60-
appManaged.sendMessage(message);
61-
62-
assertEquals(message, simpleReceiver.receiveMessage());
63+
appManagedSender.sendMessage(message);
64+
65+
assertEquals(message, appManagedReceiver.receiveMessage());
6366
}
64-
67+
6568
@Deployment
6669
public static WebArchive deploy() {
6770
return ShrinkWrap.create(WebArchive.class)
68-
.addClass(MessageSenderSync.class)
69-
.addClass(MessageReceiverSync.class)
70-
.addClass(ClassicMessageSender.class)
71-
.addClass(ClassicMessageReceiver.class)
72-
.addClass(MessageSenderAppManaged.class)
73-
.addClass(Resources.class);
71+
.addClasses(MessageSenderSync.class,
72+
MessageReceiverSync.class,
73+
ClassicMessageSender.class,
74+
ClassicMessageReceiver.class,
75+
MessageSenderAppManaged.class,
76+
MessageReceiverAppManaged.class,
77+
Resources.class);
7478
}
75-
79+
7680
}

jms/send-receive/src/test/resources/arquillian.xml

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
 (0)