2009-10-27 6 views
3

우리는 SharePoint 2007 웹 파트로 변환하려는 BEA 포털에서 많은 Java 기반 서블릿/포틀릿을 실행하고 있습니다. 대부분의 포틀릿은 사용자 기본 설정을 사용하지만 구현은 포틀릿에서 직접 처리하고 포털과는 별도의 데이터베이스에 저장된 기본 설정간에 분할됩니다. 다른 사람들은 사용자 환경 설정에 BEA WebLogic API를 사용하고 있습니다.JSP를 SharePoint 웹 파트로 변환

세 가지 질문 :

  1. 사람이 (JRE 1.4.2와 톰캣 4.1에서 실행에 대해 컴파일) 자바 서블릿/JSP는 셰어 포인트 2007는 WebPart로 실행되도록받은 적이 있습니까?
  2. 일반적으로 얼마나 많은 노력이 들었습니까 (일/주/월 단위로 측정 되었나요?).
  3. 적어도 사용자 기본 설정과 관련하여 포틀릿을 기본 웹 파트로 다시 작성하는 것이 더 쉬울까요?

답변

0

다음은 주식 시세 패널 인 단일 포틀릿에 대한 작업입니다.

주가가 표시되는 가젯이 있습니다. 저희는 Tickertech에 문의하여 견적 정보를 제공하고 있습니다. 사용자가 비공개 페이지에 가젯을 추가 한 다음 개인으로 관심있는 주식을 선택할 수있는 사용자 환경 설정이 있습니다. 표시 할 열을 선택할 수도 있습니다. 이것은 JavaScript를 통해 수행됩니다. 선택한 주식 기호는 요청을 유효한 고객으로부터 온 것으로 식별하는 토큰과 함께 전송됩니다.

가장 간단한 방법은 웹 콘텐츠 컨트롤을 사용하여 JavaScript에 붙여 넣는 것입니다. 이것은 작동하지만 사용자가 Tickertech와 관련된 주식 기호 나 기타 환경 설정을 변경할 수있는 방법은 없습니다.

다음 단계는 사용자 지정 Webpart를 만드는 것입니다. 우리는 Visual Studio에 WSPBuilder 애드온을 사용하고 있습니다. 이 프로젝트에 도움이되는 컨설팅 회사는 그것을 권장했고, 나는 그들이 매우 기뻤고, 통합주기를 허용 가능한 수준으로 줄였습니다.

webpart에는 스크립트가 포함 된 속성이 있습니다.

public class MarketSummaryWP : Microsoft.SharePoint.WebPartPages.WebPart 
{  
    string m_scriptBlockPre = "<script language='javascript'> \n"+ // the beginning of the JavaScipt block 

CreateChildControls() 재정의에서 방금 리터럴로 추가했습니다.

다음은 스크립트를 비공개로 변경했으며 주식 기호 목록을 보유 할 다른 속성을 만들었습니다. Script 속성은 getter 내부의 연결을 처리합니다.

//Script Property 
    [WebBrowsable(false), 
    WebDisplayName("Script"), 
    WebDescription("The JavaScript to insert in the page.")] 
    public string Script 
    { 
    get { return m_scriptBlockPre + m_stockSymbolsList + m_scriptBlockPost; } 
    //set { ; } 
    } 

    //Stock Symbol list Property 
    [Personalizable(PersonalizationScope.User), WebBrowsable(true), 
    WebDisplayName("Stock Symbols"), 
    WebDescription("The stock symbols to retrieve quotes for, seperated by commas.")] 
    public string StockSymbols 
    { 
     get { return m_stockSymbolsList; } 
     set { m_stockSymbolsList = value; } 
    } 


    string m_stockSymbolsList = "GE,CAT,$DJI,AMR,JNJ,"; 

    string m_scriptBlockPost = " *other JavaScript code* </script> \n"+ 

이렇게하면 webpart 갤러리에 있기 때문에 어떤 페이지 에나 추가 할 수있는 webpart가 표시됩니다. 정적 html 웹 파트를 사용하여 빌드 된 webpart 사본을 추가하려면 '소스보기'를 사용하여 기존 인스턴스에서 JavaScipt 블록을 가져 와서 대상 페이지로 이동하고 정적 HTML 웹 파트의 새 인스턴스를 추가해야합니다. JavaScipt 블록을 포함하도록 수정합니다. 매번. 이렇게하면 사용자는 웹 파트 목록에서 선택하기 만하면되며 사용자 정의 주식 시세 선호도를 가질 수 있습니다.

1

BEA 포털에서 Sharepoint로 변환하는 약간 비슷한 프로젝트가 있습니다.

차이점은 webparts/portlets로는 java 서블릿이나 JSP 페이지가 없기 때문에 우리 시스템의 모든 코드는 .net 포틀릿 (현재는 webparts)입니다.

Java 서블릿은 팝업 창에 있으며 하이퍼 링크를 사용하여 Sharepoint에서 연결됩니다.

나는 이렇게 대답하지 못했습니다.
그러나 양식을 완전히 다른 방식으로 작성해야하므로 BEA 포털 포틀릿을 SharePoint 웹 파트로 변환하는 것은 중요한 작업입니다.

노력의 측면에서 우리는 1 명의 전임 개발자 및 1 명의 SharePoint 인프라/구성자와 함께 대략 100 개의 가젯을 1 년 내에 webparts/응용 프로그램으로 마이그레이션했습니다.

그리고 3 ... 포틀릿의 복잡성에 따라 다릅니다. 포틀릿/웹 파트로 유지하려는 경우 페이지 뷰어 웹 파트와 같은 해킹을 사용하지 않으면 전체 다시 쓰기가 필요하지만 실제로 마이그레이션하지 않는 경우 기존 시스템을 맨 위에 캡슐화하면됩니다.

나는이 프로젝트가 성공하기 위해 신중한 계획이 필요하다고 말한다.
도움이 되었기를 바랍니다.

+0

@Bravax, 팝업 창을 사용하는 솔루션은 # 1에서 생각한 것처럼 들립니다. SharePoint를 사용하여 기존 시스템을 캡슐화하는 경우라도 모든 포틀릿을 webpart로 다시 작성하는 것이 좋습니다. –

관련 문제