¿Cómo puedo tener dos servicios web separados con espacio de nombre idéntico y las solicitudes de nombre local se enrutan a diferentes puntos finales?

Estoy intentando crear 2 servicios web separados, ambos dentro de un despliegue de primavera, ambos con los wsdl generados desde los mismos esquemas xsd, pero los tengo enrutados a dos puntos finales separados para que pueda manejar las solicitudes de manera diferente en contextos separados .

Ex:

Servicio web 1: subconjunto de acceso, privilegios más bajos y restricciones de seguridad

Servicio web 2: privilegios superiores

<sws:dynamic-wsdl id="spml-readonly" 
    portTypeName="SpmlReadOnlyService" 
    locationUri="SpmlReadOnly">
    <sws:xsd location="/WEB-INF/xsd/spml/pstc_spmlv2_core.xsd"/>
</sws:dynamic-wsdl>

<sws:dynamic-wsdl id="spml-crud" 
    portTypeName="SpmlCrudService" 
    locationUri="SpmlCrud">
    <sws:xsd location="/WEB-INF/xsd/spml/pstc_spmlv2_core.xsd"/>
    <sws:xsd location="/WEB-INF/xsd/spml/pstc_spmlv2_search.xsd"/>
    <sws:xsd location="/WEB-INF/xsd/spml/pstc_spmlv2_batch.xsd"/>
</sws:dynamic-wsdl>

Ahora, ya que ambos wsdls se basan en el mismo xsds, el "espacio de nombres" y "localPart" de las solicitudes son idénticos, independientemente del servicio web al que esté accediendo (/ SpmlReadOnly o / SpmlCrud).

Por lo tanto, eso es descartar el PayloadRootQNameEndpointMapping desaprobado ya que el LocalPart y el espacio de nombres siguen siendo idénticos, etc.

    @PayloadRoot(namespace = NAMESPACE_URI, localPart = "lookupRequest")
    @ResponsePayload
    public Source handleLookupRequest(SoapMessage message) throws Exception {
        ...
    }

¿Es lo que soy capaz de hacer incluso posible? Si los xsd son compartidos y tienen espacios de nombres idénticos en la raíz del esquema, y ​​las mismas solicitudes del método localPart, ¿habrá alguna vez una manera de distinguirlos y asignarlos a dos puntos finales diferentes? Cualquier información sobre esto sería útil! ¡Espero no tener que configurar dos .wars separados y desplegarlos por separado con sus propias bases de código en un servidor!

Gracias damian

Respuestas a la pregunta(1)

Su respuesta a la pregunta