Skip to content

Commit ebdafd4

Browse files
authored
6921 WLS JMS connector doesn't support named factory bean (#6923)
1 parent 8c5aff0 commit ebdafd4

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/ConnectionContext.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import static io.helidon.messaging.connectors.jms.JmsConnector.JNDI_JMS_FACTORY_ATTRIBUTE;
3737
import static io.helidon.messaging.connectors.jms.JmsConnector.JNDI_JMS_FACTORY_DEFAULT;
3838
import static io.helidon.messaging.connectors.jms.JmsConnector.JNDI_PROPS_ATTRIBUTE;
39+
import static io.helidon.messaging.connectors.jms.JmsConnector.NAMED_FACTORY_ATTRIBUTE;
3940

4041
/**
4142
* Context related to one actual connection being constructed by JMS connector.
@@ -68,7 +69,8 @@ public class ConnectionContext {
6869
}
6970

7071
boolean isJndi() {
71-
return config.get(JNDI_ATTRIBUTE).exists();
72+
return config.get(JNDI_ATTRIBUTE).exists()
73+
&& !config.get(NAMED_FACTORY_ATTRIBUTE).exists();
7274
}
7375

7476
Optional<? extends ConnectionFactory> lookupFactory() {

messaging/connectors/wls-jms/src/main/java/io/helidon/messaging/connectors/wls/ThinClientClassLoader.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,14 @@ static <T> T executeInIsolation(IsolationSupplier<T> supplier) {
9797

9898
boolean inWlsJar(String name) {
9999
// Load jms exceptions from inside the thin jar to avoid deserialization issues
100-
if (name.startsWith("javax.jms") && name.endsWith("Exception")) {
100+
if ((name.startsWith("javax.jms") || name.startsWith("jakarta.jms"))
101+
&& name.endsWith("Exception")) {
101102
return true;
102103
}
103104

104-
// Load only javax JMS API from outside, so cast works
105+
// Load only javax and jakarta JMS API from outside, so cast works
105106
return !name.startsWith("javax.jms")
107+
&& !name.startsWith("jakarta.jms")
106108
&& !name.equals(IsolatedContextFactory.class.getName());
107109
}
108110

messaging/connectors/wls-jms/src/main/resources/META-INF/helidon/serial-config.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@
1414
# limitations under the License.
1515
#
1616

17-
pattern=weblogic.**;java.util.**;java.lang.**;java.io.**;java.rmi.**
17+
pattern=weblogic.**;java.util.**;java.lang.**;java.io.**;java.rmi.**;javax.naming.**

0 commit comments

Comments
 (0)