With UriEndpointMapping you have to map the whole url in case of http protocol is used. I wrote a small class which uses the url path instead of full uri. So that hostname and port is not important.

Mapping wirh UriEndpointMapping and URLPathEndpointMapping
"http://theserver:9084/service/abc" -> "/service/abc"

Can you please add this to source code?

Code:
package org.springframework.ws.server.endpoint.mapping;

import org.springframework.ws.context.MessageContext;
import org.springframework.ws.server.endpoint.mapping.AbstractMapBasedEndpointMapping;
import org.springframework.ws.transport.WebServiceConnection;
import org.springframework.ws.transport.context.TransportContext;
import org.springframework.ws.transport.context.TransportContextHolder;

import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Locale;

/**
 *
 *@author Kaan Yamanyar
 */
public class URLPathEndpointMapping extends AbstractMapBasedEndpointMapping {

    @Override
    protected boolean validateLookupKey(String key) {
        try {
            new URI(key);
            return true;
        } catch (URISyntaxException e) {
            return false;
        }
    }

    @Override
    protected String getLookupKeyForMessage(MessageContext messageContext) throws Exception {
        TransportContext transportContext = TransportContextHolder.getTransportContext();
        if (transportContext != null) {
            WebServiceConnection connection = transportContext.getConnection();
            if (connection != null) {
                String connectionUri = connection.getUri().toString();
                URL connectionURL = new URL(connectionUri);
                String path = connectionURL.getPath().toLowerCase(Locale.ENGLISH);
                logger.debug("Required endpoint: "+path);
                return path;
            }
        }
        return null;
    }
}