2012-07-24 52 views
3

編輯 - 要補充,這是2011年的外表套上SP1觀衆經理 - Com.Tridion.Broker.StorageException:事務回滾

當嘗試使用TOM.NET API來保存新的觀衆經理的個人資料,我收到以下錯誤:

Com.Tridion.Broker.StorageException: Transaction rolled back, error executing work, error executing work 
    at Codemesh.JuggerNET.NTypeValue.Throw(Int64 inst) 
    at Codemesh.JuggerNET.JavaClass.ThrowTypedException(Int64 inst) 
    at Codemesh.JuggerNET.JavaMethod.CallVoid(JavaProxy jpo, Object val) 
    at Tridion.OutboundEmail.ContentDelivery.Profile.Contact.Save(String pageUri) 

通常與存儲異常我一直在想有什麼問題我cd_licenses.xml文件我的演講臺服務器上,或配置似乎並沒有在它被指向....但我我檢查了兩者,一切似乎都沒有問題。

保存受衆羣體管理器配置文件之前,有人會遇到此消息嗎?

+0

存儲異常提到正在回滾的事務,只是想在你的數據庫日誌文件中可能有什麼相關的東西? – 2012-07-25 06:46:59

+0

好的建議,我來看看。我注意到的一點是,出站電子郵件同步不起作用 - 這可能意味着連接到數據庫的問題(我希望:)) – 2012-07-25 08:07:07

回答

3

對於這個問題的可能原因,我已經看到:

  1. 你錯過了所需要
  2. 您正在使用的DLL的32位版本在64有些JAR文件位系統(反之亦然)
  3. 有出站電子郵件和內容傳輸在同一應用程序池
+0

DLL應該沒問題,我們正在使用64位環境,並且最初安裝了32位DLL,導致出現圖像格式異常,我們將它們交換出來並解決了這個問題。 JAR在第一遍時看起來不錯,並與我們在其他測試機器上的JAR匹配,但我會再仔細檢查以確保 – 2012-07-24 16:30:18

+0

我只記得第三個原因,這可能就是您的原因(考慮到您提及出站電子郵件)。我不記得細節(希望有更多的OE經驗可以回答這個問題),但是當你將CD和OE DLL加載到同一個應用程序池中時,出現了一些問題(2011 GA)。 – 2012-07-24 16:56:36

+0

此外,請檢查您的cd_storage_conf.xml以查看是否包含存儲綁定,DB存儲,並且您擁有AudienceManagerProfile的項目TypeMappings。 – 2012-07-24 17:42:13

2

檢查cd_stroage_conf.xml,以確保您有包括正確的存儲綁定。

<StorageBindings> 
    <Bundle src="AudienceManagerDAOBundle.xml"/> 
</StorageBindings> 

<Storage Id="profiledb" Class="com.tridion.storage.persistence.JPADAOFactory" Type="persistence" 
     dialect="MSSQL"> 
    <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="5" Type="jdbc"/> 
    <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource"> 
     <Property Name="serverName" Value="localhost"/> 
     <Property Name="portNumber" Value="1433"/> 
     <Property Name="databaseName" Value="tridion_submgmt_DB"/> 
     <Property Name="user" Value="username"/> 
     <Property Name="password" Value="password"/> 
    </DataSource> 
</Storage> 

另外,您需要將項目類型映射到相同的數據庫。

<Item typeMapping="AudienceManagerProfile" storageId="profiledb"/> 

(可選)如果您使用的是跟蹤,則應該有跟蹤數據庫和跟蹤類型映射。