태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
페이지를 읽고 있습니다. ( 아쿠아바다's Blog )
분류 전체보기 (769)
쉐어포인트 (24)
Exchange (12)
SQL (121)
XML (36)
WEB (294)
O / S (97)
삶의향기 (162)
기획 (19)
RSS 피드(IE 7.0부터 기본 지원됩니다. 이전 버전 사용자는 접합한 툴을 사용하세요!!)

SharePoint 제품 및 기술을 위한 사용자 지정 웹 서비스 작성

Rahul Sakdeo
Rohit Puri
Brett Stallman
Microsoft Corporation

2004년 4월

적용 대상:
    Microsoft Windows SharePoint Services
    Microsoft Office SharePoint Portal Server 2003


요약: Microsoft SharePoint 제품 및 기술을 위한 사용자 지정 웹 서비스를 만드는 방법과 SharePoint 제품 및 기술 인프라를 사용하여 원격 문서 액세스를 위한 문서 업로드 웹 서비스를 만드는 방법에 대해 알아 보십시오. 함께 제공되는 다운로드 가능한 샘플은 외부 응용 프로그램에서 문서를 원격으로 작업하기 위한 웹 서비스를 제공합니다.

참고   이 문서의 정보는 또한 Windows SharePoint Services 플랫폼을 기반으로 하는 Microsoft Office SharePoint Portal Server 2003에도 적용됩니다. SharePoint Portal Server를 사용하여 포털 컨텍스트에서 만든 SharePoint 사이트에서 코드 샘플을 사용할 수 있습니다.

ODC_WritingCustomWebServicesSampleSPPT.EXE 를 다운로드하십시오.

목차

서론
웹 서비스 샘플 정보
사용자 지정 웹 서비스 작성
예제 문서 업로드 웹 서비스 만들기
문제 해결 가이드
결론

서론

Microsoft Windows SharePoint Services의 풍부하고 견고한 플랫폼에서 강력한 솔루션을 작성할 수 있습니다. 개발자들은 Windows SharePoint Services의 일부 기능을 사용하여 고유한 사용자 지정 웹 서비스를 만들고 싶을 수도 있을 것입니다.

참고   Windows SharePoint Services에 사용되는 향상된 보안 모델로 인한 몇 가지 제한이 있습니다. Microsoft Visual Studio .NET에서 ASP.NET 웹 서비스 템플릿을 사용하여 Windows SharePoint Services용 웹 서비스를 만들려면, Windows SharePoint Services를 실행하는 가상 서버 외에 다른 포트를 사용하는 가상 서버에서 웹 서비스를 만들어야 합니다. 또한 Windows SharePoint Services를 실행하는 서버에 대한 로컬 관리자 그룹의 구성원이어야 합니다.

다음 목록은 사용자 지정 웹 서비스를 작성하기 위한 과정을 요약한 것입니다. 이 문서의 나머지 부분에서는 이러한 과정에 대해 자세하게 설명합니다.

  • 기본 웹 사이트(포트 80)에서 Windows SharePoint Services를 호스팅할 경우 다른 포트를 사용하는 가상 서버를 만듭니다. 새 가상 서버는 개발 웹 서버로 작동하고, Windows SharePoint Services를 호스팅하는 가상 서버는 배포 웹 서버로 작동합니다.
  • 개발 가상 서버에서 웹 서비스 프로젝트를 만듭니다.
  • 정적 검색(.disco) 파일과 .wsdl 파일을 생성 및 수정하고, 이러한 파일을 .aspx 페이지로 저장한 다음, 페이지 지시문과 함께 Microsoft.SharePoint 네임스페이스를 등록합니다.
  • 서비스 가상화를 지원하도록 .disco 및 .wsdl 파일을 수정합니다.
  • 웹 서비스 개발이 끝나면 파일을 Windows SharePoint Services 사이트의 실제 경로에 있는 _vti_bin 및 _vti_bin\bin 가상 디렉터리에 배포합니다.
참고   이 문서에서는 사용자가 Microsoft .NET Framework 및 ASP.NET과 프로그래밍 언어(예: C 또는 Microsoft Visual Basic .NET.)를 충분히 이해하고 있다고 가정합니다. 이 문서에 포함되지 않은 추가 참조 자료는 Microsoft SharePoint 제품 및 기술 소프트웨어 개발 키트(SDK) 를 참조하십시오.

웹 서비스 샘플 정보

The ODC_WritingCustomWebServicesSampleSPPT.EXE를 다운로드하면 원격 문서 액세스를 위한 샘플 웹 서비스를 얻을 수 있습니다. 이 프로젝트는 Microsoft.SharePoint 네임스페이스에 의해 제공되는 몇 가지 문서 액세스 메서드(즉, SPFile.CheckIn, SPFile.CheckOut, SPFile.UndoCheckOut 및 SPFileCollection.Add)를 구현합니다. 이 사용자 지정 웹 서비스가 없을 경우 WebDAV(Web Distributed Authoring and Versioning) 또는 Microsoft Office FrontPage 원격 프로시저 호출(RPC) 요청을 사용하여 원격 문서 액세스를 제공해야 합니다.

Windows SharePoint Services를 실행하는 서버에서 이 서비스를 사용하려면

  1. ODC_WritingCustomWebServicesSampleSPPT.EXE를 다운로드하여 Windows SharePoint Services를 실행하는 프런트 엔드 서버의 다음 디렉터리에 해당 내용의 압축을 풉니다.
    Local_drive:\CreatingaCustomWebServiceSample
    
  2. build.bat 파일을 두 번 클릭하여 프로젝트를 컴파일하고 웹 서비스를 설치합니다.

    다음 파일이 Local_drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\isapi\ 디렉터리에 복사됩니다.

    • SPFiles.asmx
    • spfilesdisco.aspx
    • spfileswsdl.aspx

    다음 파일이 Local_drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\isapi\BIN\ 디렉터리에 복사됩니다.

    • WSCheckOut.dll
    • WSCheckOut.pdb

사용자 지정 웹 서비스 작성

Visual Studio .NET 통합 개발 환경은 Windows SharePoint Services를 실행하는 컴퓨터를 위한 사용자 지정 웹 서비스를 쉽게 작성할 수 있도록 ASP.NET 웹 서비스 템플릿을 제공합니다. 그러나 이 템플릿을 사용하려면 먼저 Windows SharePoint Services가 실행 중인 포트와 다른 포트에 있는 인터넷 정보 서비스(IIS)에서 가상 서버를 만들어야 합니다.

다른 포트에서 가상 서버를 만들려면

  1. 시작을 클릭하여 관리 도구를 가리킨 다음 인터넷 정보 서비스(IIS) 관리자를 클릭합니다.
  2. 가상 서버를 추가할 서버 컴퓨터의 분기를 확장합니다. 서버 컴퓨터 분기 아래에서 웹 사이트 폴더를 마우스 오른쪽 단추로 클릭하고 새로 만들기를 가리킨 다음 웹 사이트를 클릭합니다.
  3. 이름 상자에서 새 웹 사이트의 이름을 입력합니다.
  4. 설명 상자에 가상 서버에 대한 설명을 입력한 후 다음을 클릭합니다.
  5. 이 웹 사이트에서 사용할 IP 주소를 입력하십시오 상자에서 사용할 IP 주소를 선택하거나 기본값(모두 할당되지 않음)을 사용합니다.
  6. 이 웹 사이트가 사용해야 하는 TCP 포트 상자에 가상 서버에 할당한 포트 번호를 입력한 후 다음을 클릭합니다.
    참고   포트 번호가 현재 사용 중이 아닌지 확인하십시오. Windows SharePoint Service가 호스팅을 처리하므로 호스트 헤더를 할당할 필요가 없습니다.
  7. 경로 상자에서 프로젝트를 저장할 하드 디스크상의 위치에 대한 경로를 찾아서 선택하거나 입력합니다.
  8. 가상 서버에 대한 익명 액세스를 허용하지 않으려면 이 웹 사이트에 익명 액세스 허용 확인란의 선택을 취소한 후 다음을 클릭합니다.
  9. 웹 사이트 액세스 권한 패널에서 사용할 권한을 선택한 후 다음을 클릭합니다.
    참고   대부분의 경우 기본 권한을 그대로 사용하는 것이 가장 좋습니다. 기본적으로 읽기 권한과 스크립트 실행(예: ASP) 권한이 선택됩니다. Windows SharePoint Services는 실행(예: ISAPI 응용 프로그램 또는 CGI) 권한을 해당 폴더에 자동으로 추가합니다.
  10. 마침을 클릭합니다.

Visual Studio .NET에서 웹 서비스 프로젝트를 만들려면

  1. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.
  2. 프로젝트 형식 상자에서 선호하는 언어에 따라 Visual Basic 프로젝트 또는 Visual C 프로젝트를 선택합니다.
  3. 템플릿 상자에서 ASP.NET 웹 서비스를 선택합니다.
  4. 위치 상자에 다음 경로를 입력합니다.
  5. 확인을 클릭합니다.
    참고   원격 컴퓨터에서는 경로가 새 프로젝트 대화 상자에 지정한 URL에 해당하지 않는다는 것을 나타내는 "웹 액세스 실패" 오류 메시지가 발생합니다. 이 경우에는 다음 단계를 따릅니다.
    원하는 작업을 선택하십시오 아래에서 다른 파일 공유 경로를 사용하여 다시 시도 확인란이 선택되었는지 확인한 다음 위치 상자에 다음 경로를 입력합니다.
    \\Server_Name\NewVirtualRootPath
    
    확인을 클릭합니다.
    이 단계를 완료하면 Service1.asmx 파일을 포함하는 빈 ASP.Net 웹 서비스 프로젝트가 만들어집니다.
  6. 솔루션 탐색기에서 Service1.asmx를 마우스 오른쪽 단추로 클릭한 다음 코드 보기를 클릭합니다.
  7. 다음 줄에서 주석을 제거합니다.
    '<WebMethod()> Public Function HelloWorld() As String
    '    HelloWorld = "Hello World"
    ' End Function
    
  8. 프로젝트를 컴파일합니다.

이제 Windows SharePoint Services를 실행하는 가상 서버에 서비스를 배포할 수 있습니다.

Windows SharePoint Services의 사용자 지정 웹 서비스에 대해 바인딩하려면, 웹 서비스의 정적 검색(.disco) 파일과 .wsdl 파일에 기초하는 특수한 .aspx 페이지가 Visual Studio .NET에 필요합니다. 다음 절차에 설명된 것처럼 Visual Studio .NET과 함께 설치된 명령줄 유틸리티를 사용하여 정적 검색(.disco) 파일과 .wsdl 파일을 만드십시오.

.disco 파일과 .wsdl 파일을 작성 및 편집하려면

  1. Visual Studio .NET 명령 프롬프트에서 다음 줄을 입력한 다음 Enter 키를 눌러 현재 폴더에서 Service1.disco 및 Service1.wsdl 파일을 만듭니다.
  2. Service1.disco 파일을 열고 다음 줄을 찾습니다.
    <?xml version="1.0" encoding="utf-8"?>
    

    위 줄을 다음 줄로 바꿉니다.

    <%@ Page Language="C" Inherits="System.Web.UI.Page"%>
    <%@ Assembly Name="Microsoft.SharePoint, Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Import Namespace="Microsoft.SharePoint.Utilities" %>
    <%@ Import Namespace="Microsoft.SharePoint" %> <% Response.ContentType = "text/xml"; %>
  3. 파일을 Service1disco.aspx로 저장합니다.
  4. 2단계부터 4단계까지 반복하여 Service1.wsdl 파일을 수정하고 Service1wsdl.aspx로 저장합니다.

서비스 가상화를 지원하도록 Service1disco.aspx 및 Service1wsdl.aspx 파일을 수정하려면

참고   다음에 나오는 코드 샘플에는 온라인 표시가 용이하도록 줄 바꿈이 추가로 포함되어 있습니다. 이러한 샘플을 사용하려면 이러한 줄 바꿈을 제거하십시오.
  1. Service1disco.aspx 파일을 열어서 다음 태그를 찾습니다.
    <contractRef ref="http://server_name:New_Port/Project_Name/Service1.asmx?wsdl" docRef=
    http://server_name:New_Port/Project_Name/Service1.asmx
    xmlns="http://schemas.xmlsoap.org/disco/scl/" />
  2. <contractRef>태그에서 다음과 같이 변경합니다.
    <contractRef ref=<% SPEncode.WriteHtmlEncodeWithQuote(Response, SPWeb.OriginalBaseUrl(Request)
     + "?wsdl", '"'); %> docRef=<% SPEncode.WriteHtmlEncodeWithQuote(Response,
     SPWeb.OriginalBaseUrl(Request), '"'); %> xmlns="http://schemas.xmlsoap.org/disco/scl/" />
    
  3. 다음 태그를 찾습니다.
    <soap address="http://server_name:New_Port/Project_Name/Service1.asmx" xmlns:q1=
    "http://tempuri.org/" binding="q1:Service1Soap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
    
  4. <soap address> 태그를 다음과 같이 변경한 다음 변경 내용을 저장합니다.
    <soap address=<% SPEncode.WriteHtmlEncodeWithQuote(Response, SPWeb.OriginalBaseUrl
    (Request), '"'); %> xmlns:q1="http://tempuri.org/" binding="q1:Service1Soap" xmlns=
    "http://schemas.xmlsoap.org/disco/soap/" />
    
  5. Service1wsdl.aspx 파일을 열어서 다음 줄을 찾습니다.
    <soap:address location="http://server_name:New_Port/Project_Name/Service1.asmx" />
    
  6. soap:address 줄을 다음과 같이 변경하고 변경 내용을 저장합니다.
    <soap:address location=<% SPEncode.WriteHtmlEncodeWithQuote(Response,
     SPWeb.OriginalBaseUrl(Request), '"'); %> />
    

웹 서비스 파일을 _vti_bin 가상 디렉터리에 복사하려면

  1. Service1wsdl.aspx, Service1disco.aspx 및 Service1.asmx 파일을 _vti_bin 가상 디렉터리에 복사합니다. 모든 기본 웹 서비스가 이 디렉터리에 저장됩니다.
  2. 해당 어셈블리(.dll) 파일을 _vti_bin/bin 가상 디렉터리에 복사합니다.
    참고   _vti_bin/bin 가상 디렉터리는 \\Server_Name\Program Files\Common Files\Microsoft Shared\Web Server Extensions\ISAPI 디렉터리에 매핑됩니다.

다음으로 Visual Studio .NET의 웹 참조 추가 브라우저에 표시되는 기본 Windows SharePoint Services 웹 서비스의 목록에 서비스를 포함시켜야 합니다.

서버의 웹 서비스 목록에 웹 서비스를 포함하려면

  1. 메모장에서 Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\ISAPI 폴더의 spdisco.aspx 파일을 엽니다.
  2. 파일 끝의 요소 내에 다음 줄을 추가하고 파일을 저장합니다.
    <contractRef ref=
    <% SPEncode.WriteHtmlEncodeWithQuote(Response, spWeb.Url + "/_vti_bin/Service1.asmx?wsdl", '"'); %>
    docRef=<% SPEncode.WriteHtmlEncodeWithQuote(Response, spWeb.Url + "/_vti_bin/Service1.asmx", '"'); %>
    xmlns="http://schemas.xmlsoap.org/disco/scl/" /><soap address=<% SPEncode.WriteHtmlEncodeWithQuote(Response, spWeb.Url + "/_vti_bin/Service1.asmx", '"'); %> xmlns:q1="http://schemas.microsoft.com/sharepoint/soap/directory/" binding="q1:Service1Soap" xmlns="http://schemas.xmlsoap.org/disco/soap/" />
    참고   soap 요소의 soap 요소의 binding 특성(이 예제에서는 binding="q1:Service1Soap")에서 "Soap" 앞에 표시되는 텍스트는 웹 서비스에 정의되는 클래스의 이름을 지정합니다. 특성(이 예제에서는 binding="q1:Service1Soap")에서 "Soap" 앞에 표시되는 텍스트는 웹 서비스에 정의되는 클래스의 이름을 지정합니다.

웹 서비스 사용

이제 Visual Studio .NET에서 Windows 응용 프로그램을 만들어 사용자 지정 웹 서비스를 사용할 준비가 되었습니다.

사용자 지정 웹 서비스를 사용하려면

  1. 다른 컴퓨터에서 Visual Studio .NET을 엽니다.
  2. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.
  3. 프로젝트 형식 상자에서 선호하는 언어에 따라 Visual Basic 프로젝트 또는 Visual C 프로젝트를 선택합니다.
  4. 템플릿 상자에서 Windows 응용 프로그램을 선택합니다.
  5. 프로젝트의 이름과 경로를 지정한 다음 확인을 클릭합니다.
  6. 기본 양식에서 새 웹 서비스를 호출하기 위한 명령 단추를 추가합니다.
  7. 웹 참조를 웹 서비스에 추가합니다.
  8. 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 웹 참조 추가를 클릭합니다.
  9. 마법사에서 아래 URL을 입력한 다음 열기를 클릭하여 웹 서비스에 대한 서비스 계약을 다운로드합니다.
    http://Server_name/_vti_bin/Service1.asmx
    

    이 참조의 이름을 WSSServer로 지정합니다.

  10. 다음 using 지시문을 프로젝트에 추가합니다.
    using System.Net;
    
  11. 새 단추의 Click 이벤트에서 다음 코드 줄을 추가합니다.
    WSSServer.Service1 _svc = new WSSServer.Service1();
    //to use the following line use System.Net in the using section
    _svc.Credentials = CredentialCache.DefaultCredentials;
    string _Retval = _svc.HelloWorld();
    MessageBox.Show(_Retval);
    
  12. 프로젝트를 컴파일하여 실행한 다음 단추를 눌러 웹 서비스를 테스트합니다.

예제 문서 업로드 웹 서비스 만들기

이 문서의 앞에 설명된 방법을 사용하여 Windows SharePoint Services를 실행하는 컴퓨터의 공유 문서 문서 라이브러리에 문서를 업로드하는 웹 서비스를 만들 수 있습니다. 이 웹 서비스는 서비스 가상화를 사용하여 사이트 컨텍스트를 확인한 다음 공유 문서 문서 라이브러리 폴더에 문서를 업로드합니다.

업로드 서비스를 만들려면

  1. 앞 단원에서 설명한 방법을 사용하여 웹 서비스 프로젝트를 만듭니다. 프로젝트의 이름을 UploadSvc로 지정하고 웹 서비스 클래스 및 생성자의 이름을 UploadFile로 지정합니다.
  2. 솔루션 탐색기에서 Service1.asmx를 마우스 오른쪽 단추로 클릭하고 파일 이름을 UploadFile.asmx로 바꿉니다.
  3. Windows SharePoint Services에 대한 어셈블리(Microsoft.Sharepoint.dll)의 참조를 추가합니다. 기본적으로 이 어셈블리는 다른 어셈블리와 함께 전역 어셈블리 캐시에 나열됩니다. 또한 Windows SharePoint Services에 대한 어셈블리는 다음 디렉터리에 위치합니다.
    C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\ISAPI
    
  4. 다음 웹 메서드를 UploadFile 클래스의 구성원으로 UploadFile.asmx.cs 파일에 추가합니다.
    [WebMethod]
    public string UploadDocument(string fileName, byte[] fileContents, string pathFolder)
    {
        if ( fileContents == null)
        {
            return "Null Attachment";
        }
        try
        {
            SPWeb site = SPControl.GetContextWeb(Context);
            SPFolder folder = site.GetFolder(pathFolder);
            string fileUrl = fileName;
            SPFile file = folder.Files.Add(fileUrl, fileContents);
            return file.TimeCreated.ToLongDateString()+ "::" + file.Title;
        }
        catch (System.Exception ee)
        {
            return ee.Message + "::" + ee.Source;
        }
    }
    
  5. 다음 using 지시문을 프로젝트에 추가합니다.
    using System.IO;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.WebControls;
    
  6. 웹 서비스 프로젝트를 컴파일합니다.
  7. 앞 단원에서 설명한 대로 .disco 및 .wsdl 파일을 작성 및 수정하고 spdisco.aspx 파일을 수정하되 Service1을 UploadFile로 바꿉니다. 파일을 각각 UploadFiledisco.aspxUploadFilewsdl.aspx로 저장합니다.
  8. .asmx 파일과 .disco 및 .wsdl 파일의 .aspx 버전을 _vti_bin 가상 디렉터리에 복사하고 해당 어셈블리를 _vti_bin/bin 가상 디렉터리에 복사합니다.

업로드 서비스를 사용하려면

  1. Visual Studio .NET을 연 다음 표준 Windows 응용 프로그램을 만듭니다.
  2. 앞에서 만든 웹 서비스에 대한 웹 참조를 추가합니다. 웹 참조의 이름을 WSSServer로 지정합니다.
  3. Windows 응응 프로그램의 기본 양식에 하나의 단추와 두 개의 텍스트 상자를 추가합니다. 한 텍스트 상자에서는 업로드할 파일의 경로를 입력하며 다른 텍스트 상자에서는 대상 문서 라이브러리(예: http://Server_Name/sites/Target_Site/Document_Library)를 지정합니다.
  4. 단추의 Click 이벤트에 다음 코드 줄을 추가합니다.
    WSSServer.UploadFile svcDocLib = new WSSServer.UploadFile();
    svcDocLib.Credentials = CredentialCache.DefaultCredentials;
    
    string strPath = textBox1.Text;
    string strFile = strPath.Substring(strPath.LastIndexOf("\\") + 1);
    string strDestination = textBox2.Text;
    
    FileStream fStream = new FileStream(strPath, System.IO.FileMode.Open);
    byte[] binFile = new byte[(int)fStream.Length];
    fStream.Read(binFile, 0, (int)fStream.Length);
    fStream.Close();
    
    string str = svcDocLib.UploadDocument(strFile, binFile, strDestination);
    MessageBox.Show(str);
    
  5. 다음 using 지시문을 프로젝트에 추가합니다.
    using System.Net;
    using System.IO;
    
  6. 프로젝트를 컴파일하여 실행합니다.

문제 해결 가이드

SharePoint 사이트 컨텍스트 얻기

런타임에 사용자 지정 웹 서비스가 GetContextWeb 함수를 사용하여 SharePoint 사이트 컨텍스트를 성공적으로 얻을 수 없는 경우, 웹 서비스를 사용하려고 하면 다음 오류 메시지가 표시됩니다.

System.ArgumentException: Microsoft.SharePoint.SPSite에서 값이 예상 범위를 벗어났습니다.

SharePoint 사이트에 대한 사용자 지정 웹 서비스를 만들 경우 SPControl 개체에서 GetContextWeb 함수를 호출하여 SPWeb 클래스의 인스턴스를 검색해야 합니다. GetContextWeb을 성공적으로 호출하려면 사용자 지정 웹 서비스가 SharePoint 사이트와 동일한 AppDomain 내에서 실행되어야 합니다. 이렇게 하려면 .asmx 파일을 _vti_bin 가상 디렉터리로 이동시키고 웹 서비스의 어셈블리를 _vti_bin/bin 가상 디렉터리로 이동시킵니다.

사용자 지정 웹 서비스 테스트

.asmx 파일과 어셈블리를 배포한 후에는 웹 서비스를 테스트합니다. 웹 서비스를 성공적으로 테스트하려면 SOAP를 사용하여 웹 서비스 메서드를 호출하는 테스트 응용 프로그램을 Visual Studio .NET에서 만들어야 합니다. 기본적으로 Windows SharePoint Services의 사용자 지정 웹 서비스는 클라이언트로부터 SOAP 요청만 수락합니다. SOAP가 아닌 프로토콜을 사용하여 웹 서비스를 테스트하려고 하면 다음 오류 메시지가 표시됩니다.

Microsoft.SharePoint.SPException: 이 페이지에 대한 보안 유효성 검사가 잘못되었거나 손상되었을 수 있습니다. 웹 브라우저에서 뒤로 단추를 사용하여 작업을 다시 시도하십시오(The security validation for this page is invalid and might be corrupted. Please use your Web browser's Back button to try your operation again.).

Visual Studio .NET에서 사용자 지정 웹 서비스에 웹 참조 추가

Windows SharePoint Services의 사용자 지정 웹 서비스에 대해 바인딩하려면, 특수한 .aspx 페이지가 Visual Studio .NET에 필요합니다. 필요한 .aspx 페이지가 없이 웹 참조를 웹 서비스의 .asmx 파일에 추가할 경우 다음과 같은 오류 메시지가 표시됩니다.

Visual Studio.NET에서 웹 참조를 ASMX 파일에 추가할 때 "파일을 찾을 수 없습니다".

.disco 및 .wsdl 파일을 사용하여 두 개의 새 .aspx 파일을 만들고 해당 _vti_bin 가상 디렉터리로 이러한 파일을 이동한 후에는 Visual Studio .NET에서 웹 참조를 웹 서비스에 추가할 수 있습니다. 웹 참조를 새로 만든 .aspx 파일 중 하나가 아니라 웹 서비스의 .asmx 파일에 추가한다는 것에 주의하십시오. .aspx 파일에 추가할 경우에는 Visual Studio .NET에서 웹 서비스가 제대로 작동하는 것처럼 보이지만 런타임에 다음과 같은 오류 메시지가 표시됩니다.

추가 정보: SOAP 버전이 일치하지 않습니다.
Envelope 네임스페이스 http://schemas.xmlsoap.org/wsdl/이 아닌
http://schemas.xmlsoap.org/soap/envelope/이 와야 합니다.

결론

이 문서에서 다룬 기술을 사용하여 고유한 SharePoint 기반 솔루션을 위한 Windows SharePoint Services의 성능을 확장 및 향상시키는 사용자 지정 웹 서비스를 효과적으로 만들 수 있습니다. 샘플 다운로드를 사용하여 문서를 라이브러리에 업로드하고 파일을 원격 응용 프로그램에서 체크인 또는 체크아웃하십시오.

좀더 흥미로운 내용이 많이 있습니다.. HOME > 쉐어포인트를 확인하세요
TAG   
0 Trackback, 0 Comment, :
1  ... 743 744 745 746 747 748 749 750 751  ... 769 
Statistics Graph
Total : 557,119 Today : 9