无法访问HTTP调用程序远程服务

时间:2014-02-24 10:47:04

标签: spring spring-remoting

我使用Spring并尝试访问HTTP调用程序远程服务,并在spring-http-client-config.xml中指定了url。但我得到以下异常

org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://blr1272d:8080/MaskOracle/remoting/securityService]; nested exception is java.io.IOException: Did not receive successful HTTP response: status code = 401, status message = [Unauthorized]

我在spring-http-client-config.xml中指定的配置详细信息是 下面

    <bean id="securityService"
      class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
    <property name="serviceUrl" value="http://blr1272d:8080/MaskOracle/remoting/securityService" />
    <property name="serviceInterface" value="com.him.mask.security.remote.service.SecurityService" />
    <property name="httpInvokerRequestExecutor" ref="httpInvokerRequestExecuter"/>

</bean>
 <bean id="httpInvokerRequestExecuter"  
 class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" /> 

我不知道为什么我会得到这个例外。请帮我解决这个问题。谢谢

1 个答案:

答案 0 :(得分:0)

http://blr1272d:8080/MaskOracle/remoting/securityService处的服务似乎需要身份验证,但您的securityService不使用任何凭据。

尝试使用org.springframework.richclient.security.remoting.BasicAuthCommonsHttpInvokerProxyFactoryBean并设置authenticationToken属性。