• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

'2007/10/24'에 해당되는 글 2건

  • 2007.10.24 SPList 추가 또는 SPList 템플릿 Feature 추가 중에 발생되는 오류 중.
  • 2007.10.24 MOSS 내 가상 디렉토리내에 Output Cache 비활성화 하기. 2

SPList 추가 또는 SPList 템플릿 Feature 추가 중에 발생되는 오류 중.

기술자료/Web 2007. 10. 24. 11:54

List 템플릿 추가 중에 아래와 같은 오류가 끊임없이 발생하여,

추가 List 템플릿으로 web.Lists.Add(".....", "......", listTemplate) 메소드로 SPList를 추가할 수 없는 경우가 있습니다.

System.Data.SqlClient.SqlException:

테이블 'WSS_Content.dbo.EventReceivers', 열 'Name'에 NULL 값을 삽입할 수 없습니다. 열에는 NULL을 사용할 수 없습니다.

INSERT이(가) 실패했습니다.  문이 종료되었습니다.    

 

위치: System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) 
위치: System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

위치: System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler,
 SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
위치: System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
위치: System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result,
 String methodName, Boolean sendToPipe)    

위치: System.Data.SqlClient.SqlCommand.ExecuteNonQuery()    

위치: Microsoft.SharePoint.Utilities.SqlSession.ExecuteNonQuery(SqlCommand command)

 

이 내용을 확인해 본 결과 List Template 안의 Event Add 하는 부분에서 아래와 같은 부분을 확인 할 수 있었습니다.

List Template 의 Element.xml 을 살펴본 결과 아래와 같습니다.

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

  <!-- 리스트 템플릿 정의부분 -->

  <ListTemplate

        Name="FreeTalk_Board"

        Type="8000"

        BaseType="0"

        OnQuickLaunch="TRUE"

        SecurityBits="12"

        Sequence="392"

        DisplayName="FreeTalk_Board"

        Description="FreeTalk_Board"

        Image="/_layouts/images/itann.gif"       

        />

  <!-- 이벤트 리시버 정의부분 -->

  <Receivers ListTemplateId="8000">

    <Receiver>

      <Name>CollectBoardEventReceivers</Name>

      <Type>ItemAdded</Type>

      <SequenceNumber>50000</SequenceNumber>

      <Assembly>SKT.TSquare.SPS.FreeTalk, Version=1.0.0.0, Culture=neutral, PublicKeyToken=388b774ba96c947e</Assembly>

      <Class>SKT.TSquare.SPS.FreeTalk.CollectBoardEventReceivers</Class>

      <Data />

      <Filter />

    </Receiver>

    <Receiver>

      <Name>CollectBoardEventReceivers</Name>

      <Type>ItemDeleting</Type>

      <SequenceNumber>50000</SequenceNumber>

      <Assembly>SKT.TSquare.SPS.FreeTalk, Version=1.0.0.0, Culture=neutral, PublicKeyToken=388b774ba96c947e</Assembly>

      <Class>SKT.TSquare.SPS.FreeTalk.CollectBoardEventReceivers</Class>

      <Data />

      <Filter />

    </Receiver>  

  </Receivers>

</Elements>

 

일단  <Receivers> .... </Receivers> 부분에 있는 내용을 모두 삭제해 보고 리스트를 추가해 본 결과,

위의 오류가 발생하지 않았습니다.

이번에 다시 추가해서 적용해 본 결과 오류가 재발하였습니다.

그래서 이번에는 각 Event의 이름을 다르게 적용해 보았습니다.

 

   ....

  <Receivers ListTemplateId="8000">

    <Receiver>

      <Name>FTEventItemAdded</Name>

      <Type>ItemAdded</Type>

      <SequenceNumber>50000</SequenceNumber>

      <Assembly>SKT.TSquare.SPS.FreeTalk, Version=1.0.0.0, Culture=neutral, PublicKeyToken=388b774ba96c947e</Assembly>

      <Class>SKT.TSquare.SPS.FreeTalk.CollectBoardEventReceivers</Class>

      <Data />

      <Filter />

    </Receiver>

    <Receiver>

      <Name>FTEventItemUpdated</Name>

      <Type>ItemDeleting</Type>

      <SequenceNumber>50000</SequenceNumber>

      <Assembly>SKT.TSquare.SPS.FreeTalk, Version=1.0.0.0, Culture=neutral, PublicKeyToken=388b774ba96c947e</Assembly>

      <Class>SKT.TSquare.SPS.FreeTalk.CollectBoardEventReceivers</Class>

      <Data />

      <Filter />

    </Receiver>  

  </Receivers>

   ....

 

확인해 본 결과 위와 같이 변경하니, 그 이상의 오류는 발생하지 않았습니다.

그 이후에는 이름이 동일해도 오류가 발생하지 않았습니다.

초기에 리스트 템플릿 상에서 동일한 이름으로 등록할 때 발생되는 오류로 생각됩니다.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

MOSS 내 가상 디렉토리내에 Output Cache 비활성화 하기.

기술자료/Web 2007. 10. 24. 09:54
MOSS로 구성한 사이트에, IIS 내 가상 디렉토리로 추가 구성을 한 경우,
간혹 Output Cache가 정상적으로 동작하지 않는 경우가 있다.
그런 경우 아래와 같은 이벤트가 계속 쌓이게 된다.
이벤트 형식: 오류
이벤트 원본: Office SharePoint Server
이벤트 범주: 게시 캐시
이벤트 ID: 5785
날짜:  2007-10-01
시간:  오전 8:36:03
사용자:  N/A
컴퓨터: PORTAL
설명:
출력 캐싱에 대한 게시 사용자 지정 문자열 처리기에 연결할 수 없습니다. IIS 인스턴스 ID는 '677781685'이고 URL은 'http://portal/TestSite/ServiceFrom.aspx'입니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.

정확히 확인하진 않았지만, 위와 같은 현상이 발생되는 가상 디렉토리는 보통 SPS 쪽이 NTLM이고, 가상 디렉토리 부분이 Anonymous 형태로, 인증 자체가 아예 틀린 경우다.
그런 경우 SPS 쪽의 Output Cache 프로필 중에 Anonymous 대응용 프로필이 없어 발생하는 것으로 생각된다.

이 경우 처리 방법은 해당 가상 디렉토리 내에 web.config를 별도로 생성해서 아래와 같이 처리해 주면 된다. [ 굵은 색 부분을 추가해 주면 된다. ] 
<connectionStrings/>
 <system.web>
    <httpModules>
      <remove name="OutputCache"/>
      <remove name="PublishingHttpModule"/>
    </httpModules>
   
  <!--
            컴파일된 페이지에 디버깅 기호를 삽입하려면
            compilation debug="true"로 설정하십시오. 이렇게 하면
            성능에 영향을 주므로 개발하는 동안에만 이 값을
            true로 설정하십시오.
        -->
  <compilation debug="false">



물론 정확하게는 anonymous에 대응되는 Cache 프로필을 만드는 것이 더욱 좋긴 하지만, 설정 처리 방법을 잘 모르니....
후에 Cache에 대해서 더 자세히 알게 되면 추가하도록 하겠다.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

  • «
  • 1
  • »
250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2007/10   »
일 월 화 수 목 금 토
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

WSS me2dayzm 수 Buscuit moss 매뉴얼 개발환경 Tutorial Azure me2sms 불만 2010 좀 me2photo MOSS 2007 java windows Visual Studio 인터파크 친구 twi2me Google Apps Engine SharePoint 지름신 비스킷 오류 것 블로그 협업 e-book

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바