<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE server>
<!-- $Id: jboss-service.xml 76997 2008-08-12 22:29:19Z bstansberry@jboss.com $ -->

<server>

  <!-- The HTTP invoker service configration
  -->
  <mbean code="org.jboss.invocation.http.server.HttpInvoker"
    name="jboss:service=invoker,type=http">
     <!-- Use a URL of the form http://<hostname>:8080/invoker/EJBInvokerServlet
      where <hostname> is InetAddress.getHostname value on which the server
      is running.
      -->
     <attribute name="InvokerURLPrefix">http://</attribute>
     <attribute name="InvokerURLSuffix">
        <!-- To get value, ask the ServiceBindingManager to do a string 
             replacement operation using the HTTP connector port -->
        <value-factory bean="ServiceBindingManager" method="getStringBinding">
           <parameter>jboss.web:service=WebServer</parameter>
           <parameter>:${port}/invoker/EJBInvokerServlet</parameter>
        </value-factory>
     </attribute>
     <attribute name="UseHostName">true</attribute>
  </mbean>

   <!-- Expose the Naming service interface via HTTP -->
   <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
      name="jboss:service=invoker,type=http,target=Naming">
      <!-- The Naming service we are proxying -->
      <attribute name="InvokerName">jboss:service=Naming</attribute>
      <!-- Compose the invoker URL from the cluster node address -->
      <attribute name="InvokerURLPrefix">http://</attribute>
      <attribute name="InvokerURLSuffix">
        <!-- To get value, ask the ServiceBindingManager to do a string 
             replacement operation using the HTTP connector port -->
        <value-factory bean="ServiceBindingManager" method="getStringBinding">
           <parameter>jboss.web:service=WebServer</parameter>
           <parameter>:${port}/invoker/JMXInvokerServlet</parameter>
        </value-factory>
      </attribute>
      <attribute name="UseHostName">true</attribute>
      <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
      <attribute name="JndiName"></attribute>
      <attribute name="ClientInterceptors">
          <interceptors>
             <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
             <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
             <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
             <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
          </interceptors>
      </attribute>
   </mbean>

   <!-- Expose the Naming service interface via clustered HTTP. This maps
   to the ReadOnlyJNDIFactory servlet URL
   -->
   <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
      name="jboss:service=invoker,type=http,target=Naming,readonly=true">
      <attribute name="InvokerName">jboss:service=Naming</attribute>
      <attribute name="InvokerURLPrefix">http://</attribute>
      <attribute name="InvokerURLSuffix">
        <!-- To get value, ask the ServiceBindingManager to do a string 
             replacement operation using the HTTP connector port -->
        <value-factory bean="ServiceBindingManager" method="getStringBinding">
           <parameter>jboss.web:service=WebServer</parameter>
           <parameter>:${port}/invoker/readonly/JMXInvokerServlet</parameter>
        </value-factory>
      </attribute>
      <attribute name="UseHostName">true</attribute>
      <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
      <attribute name="JndiName"></attribute>
      <attribute name="ClientInterceptors">
          <interceptors>
             <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
             <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
             <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
             <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
          </interceptors>
      </attribute>
   </mbean>
</server>

