2012-04-10 4 views
3

Java에서 작성된 웹 서비스에 C#으로 클라이언트를 만들려고합니다. 처음으로 클라이언트를 작성하려고 했으므로 MSDN의 지침을 따르고 있지만 참조 추가에 문제가 있습니다. 나는 추가 서비스 참조 대화 상자를 열고 URL을 추가 할 때 오류가 발생합니다서비스 참조를 추가 할 때 오류가 발생했습니다.

There was an error downloading 'http://geoportal.cuzk.cz/WCTService/WCTService.svc'. 
The request failed with HTTP status 404: Not Found. 
Metadata contains a reference that cannot be resolved: 'http://geoportal.cuzk.cz/WCTService/WCTService.svc'. 
There was no endpoint listening at http://geoportal.cuzk.cz/WCTService/WCTService.svc that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. 
The remote server returned an error: (404) Not Found. 
If the service is defined in the current solution, try building the solution and adding the service reference again. 

나의 다음 단계는 무엇을해야 하는가? 이걸 내가 어떻게해야할지 모르겠다!
부동산 서비스 (GetCapabilities 필수) http://geoportal.cuzk.cz/WCTService/WCTService.svc/get : 자세한 내용은

(. 그것은 체코 공화국에서 좌표 - 변환 서비스입니다)?

현지화 서비스 : http://geoportal.cuzk.cz/WCTService/WCTService.svc/get?request=GetCapabilities&service=WCTS

+1

오류가 발생했습니다 ... '엔드 포인트를 찾을 수 없습니다.'서비스가 서버에서 올바른 모양입니까? 이 서비스의 구성 파일에 끝점이 정의되어 있습니까? –

답변

3

나는 WCF 서비스 (Employee.svc)를 만든 후 비슷한 이름을 EmployeeService.svc로 변경했습니다. WCF 프로젝트는 잘 컴파일하지만 UI 클라이언트에서 서비스 참조를 추가하려고 할 때, 나는 다음과 같은 오류가 점점되었습니다

Metadata contains a reference that cannot be resolved: 'http://localhost:2278/EmployeeService.svc?wsdl'. 
The document format is not recognized (the content type is 'text/html; charset=UTF-8'). 
Metadata contains a reference that cannot be resolved: 'http://localhost:2278/EmployeeService.svc'. 
There was no endpoint listening at 'http://localhost:2278/EmployeeService.svc' that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. 
The remote server returned an error: (404) Not Found. 
If the service is defined in the current solution, try building the solution and adding the service reference again. 

내가 모든 곳에서 올바른 서비스 클래스 이름을 대체하여 해결을. 필자의 경우 직원이 아닌 EmployeeService 여야합니다.

<%@ ServiceHost Language="C#" Debug="true" Service="WCFServiceHost.**EmployeeService**" CodeBehind="EmployeeService.svc.cs" %> 

<%@ ServiceHost Language="C#" Debug="true" Service="WCFServiceHost.**Employee**" CodeBehind="EmployeeService.svc.cs" %> 

그것을 변경 그리고 다시 일하기 시작했다! 다음 왼쪽으로 장소는 SVC 파일의 마크 업 코드에 있었다 서비스 이름을 변경 한 후 WCF 프로젝트를 빌드하는 것을 잊지 마십시오.

+0

"WCF 프로젝트를 만드는 것을 잊지 마세요." 감사합니다. 그 선은 나를 구했다 :)))))) – UnuS76

0

서비스는 확실히까지 당신이 서비스 참조를 추가하기 전에 실행하고 있습니까? 메타 데이터를 노출하는 경우 서비스 동작 또는 이와 동등한 구성이 있습니까? 방화벽을 올바르게 구성 했습니까?

-1

웹 서비스가 실행되지 않습니다.

이 서비스가 실행되는 서버에 대한 액세스 권한이없는 경우 차단됩니다.

그렇지 않으면 서버가 실행되는지 확인해야합니다. Java 웹 서비스가 어떻게 실행되는지는 알 수 없으므로 더 이상 당신을 도울 수 없습니다.

2

나는 http://geoportal.cuzk.cz/WCTService/WCTService.svc?wsdl으로 찾아 보았습니다. 이 서비스가 메타 데이터를 노출하지 않는 것 같습니다.

나는 OpenGIS에 인터넷 검색의 비트를했고, 나는 당신이이 문서를 살펴 가질 필요가 있다고 생각 :

OpenGIS with .NET

당신은 단지 서비스 참조를 추가하고 갈 수 없습니다. 구체적인 WSDL을 만들 필요가있는 것 같습니다.

통합을 지원하기 위해 사용할 수있는/사용자 정의 할 수있는 클라이언트 측 라이브러리가있을 수 있습니다. Stack Overflow 질문 Using MySQL GeoSpatial data types in .NET을 살펴보십시오.

0

클라이언트 응용 프로그램에 서비스 참조를 추가하는 동안 서비스에서 클라이언트 응용 프로그램으로 메타 데이터에 액세스 할 수 없습니다. 따라서 원격 서버가 오류를 반환했습니다 : (404) 찾을 수 없습니다.

  1. 셀프 호스팅 (콘솔 응용 프로그램)을
  2. 윈도우 서비스 호스팅 호스팅 WAS 호스팅 IIS 다음과 같이 사실 우리는 WCF 서비스를 호스팅 할 수 있습니다.

자체 호스팅을 사용하는 경우 콘솔 응용 프로그램에서 서비스를 호스팅하고 서비스를 실행 (콘솔 응용 프로그램 실행) 한 다음 클라이언트 응용 프로그램에 서비스 참조를 추가해야 메타 데이터가 교환됩니다. 서비스가 실행 중이 아닌 경우 클라이언트 참조에 서비스 참조를 추가하는 중에 404 찾을 수없는 오류가 발생합니다. 동일한 프로세스가 모든 호스팅 유형에 적용됩니다. 먼저 서비스를 실행 한 다음 서비스 참조를 추가하십시오.