Application calling lookup on external-context fails with WFNAM00007: Invalid URL scheme name "null" in JBoss EAP 7

Solution Verified - Updated -

Issue

  • We configured an external context in the naming subsystem , but when our application tries to lookup java:global/external/someValue it is failing with WFNAM00007: Invalid URL scheme name "null" in JBoss EAP 7 :
Caused by: javax.naming.InvalidNameException: WFNAM00007: Invalid URL scheme name "null"
    at org.wildfly.naming.client.WildFlyRootContext.getProviderContext(WildFlyRootContext.java:808)
    at org.wildfly.naming.client.WildFlyRootContext.lookup(WildFlyRootContext.java:155)
    at javax.naming.InitialContext.lookup(InitialContext.java:421)
    at javax.naming.InitialContext.lookup(InitialContext.java:421)
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:236)
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:184)
    at org.jboss.as.naming.InitialContext$DefaultInitialContext.lookup(InitialContext.java:239)
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:193)
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:189)
    at javax.naming.InitialContext.lookup(InitialContext.java:417)
    at javax.naming.InitialContext.lookup(InitialContext.java:417)
    at org.apache.jsp.context_jsp._jspService(context_jsp.java:114)
    ... 46 more

The external context configuration is :

        <subsystem xmlns="urn:jboss:domain:naming:2.0">
            <bindings>
                <external-context name="java:global/external/" module="org.jboss.as.naming" class="javax.naming.InitialContext" cache="false">
                    <environment>
                        <property name="java.naming.factory.initial" value="org.jboss.naming.remote.client.InitialContextFactory"></property>
                        <property name="java.naming.provider.url" value="http-remoting://remote-host:8080"></property>
                        <property name="java.naming.security.principal" value="user"></property>
                        <property name="java.naming.security.credentials" value="password"></property>
                    </environment>
                </external-context>
            </bindings>
            <remote-naming></remote>
        </subsystem>

Environment

Red Hat JBoss Enterprise Application Platform (EAP) 7

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content