2011-11-14 3 views
3

ServiceStack Hello World을 구현했습니다. 중요한 것은 하나만 제외하고 모든 것이 정상입니다. SOAP11 및 SOAP12 및 WSDL이 작동하지 않습니다. SOAP11 또는 SOAP12의 URL http://localhost:8082/SOAP11/에 액세스 할 때 는 말한다 :서비스 스택 (REST) ​​SOAP 및 WSDL이 작동하지 않음

{ 
"ResponseStatus":{ 
"ErrorCode":"NotImplementedException", 
"Message":"The method or operation is not implemented.", 
"StackTrace":" at ServiceStack.WebHost.Endpoints.Support.EndpointHandlerBase.ProcessRequest(IHttpRequest httpReq, IHttpResponse httpRes, String operationName) in C:\\src\\ServiceStack\\src\\ServiceStack\\WebHost.EndPoints\\Support\\EndpointHandlerBase.cs:line 52\n at ServiceStack.WebHost.Endpoints.AppHostHttpListenerBase.ProcessRequest(HttpListenerContext context) in C:\\src\\ServiceStack\\src\\ServiceStack\\WebHost.EndPoints\\AppHostHttpListenerBase.cs:line 57\n at ServiceStack.WebHost.Endpoints.Support.HttpListenerBase.ListenerCallback(IAsyncResult asyncResult) in C:\\src\\ServiceStack\\src\\ServiceStack\\WebHost.EndPoints\\Support\\HttpListenerBase.cs:line 197" 
} 
} 

나는 콘솔 호스트를 통해 그것을 구현했습니다. 내 콘솔 호스트 클래스 :

+0

답변을 제공해 주셔서 감사합니다. 그러나 질문을 수정하여 [[SOLVED] "로 표시하거나 답변을 포함시키지 마십시오. 오히려, 자신의 질문에 대답하는 에티켓은 질문을 편집하기보다는 대답을 답변으로 게시하는 것입니다. – razlebe

답변

6

HttpListener 호스트 (즉, 독립 실행 형 콘솔)에서 호스팅되는 경우 SOAP 끝점을 사용할 수 없습니다.

XSD 및 WSDL을 보려면 ASP.NET 호스트에서 호스트해야합니다.

2

는 헬로 월드 예제 프로젝트가 실제로에서 호스팅되는

public class AppHost 
    : AppHostHttpListenerBase 
{ 
    public AppHost() //Tell ServiceStack the name and where to find your web services 
     : base("ServiceStack Examples", typeof(InventoryREST.Hello).Assembly) { } 

    public override void Configure(Funq.Container container) 
    { 
    } 
} 

내가 WSDL을 통해 액세스 할 때, 그것은 아무것도, 그냥 빈 페이지와 노력의 CPU를 보여줍니다 ... /servicestack/ 그래서 올바른 URL은 다음과 같습니다

메타 데이터 페이지 : http://localhost:8082/servicestack/metadata

SOAP 1.1 WSDL : http://localhost:8082/servicestack/soap11

SOAP 1.2 WSDL : http://localhost:8082/servicestack/soap12

참고 : 위의 WSDL 엔드 포인트는 또한 SOAP 웹 서비스의 엔드 포인트입니다, 위의 엔드 포인트 즉 당신의 SOAP 클라이언트는 것 POST SOAP 메시지.

사용자 지정 경로에서 호스팅되지 않았 으면 Web.config를 서비스 설정 서비스 으로 변경해야합니다.

+0

내 메타 데이터는 http : // localhost : 8082/metadata /에서 작동하며 사용자 정의 경로는 루트이지만 여전히 SOAP이 아닙니다. – AliRezza

+0

내 문제는 경로가 아닙니다. – AliRezza

+0

WebDevServer에서 http : // localhost : {port}/soap11 http : // localhost : {port}/soap12 및 http : //localhost/ServiceStack.Hello/soap11 http : // localhost/ServiceStack.Hello/soap12는 IIS에서 작동합니다. 사용중인 Web.config를 게시 할 수 있습니까? – mythz

관련 문제