2014-02-10 59 views
0

在我正在處理的項目中,我們有一個自定義的標識聲明者屬性映射器類,它實現了SAMLIdentityAssertionAttributeMapper接口。該課程實施方法mapAttributeInfoWeblogic 10.3.6 jar無法找到ContextElementDictionary.SAML_ATTRIBUTE_PRINCIPALS

的文檔指出以下幾點:

「無效mapAttributeInfo(收藏attrStmtInfos, 的ContextHandler ContextHandler中)從SAMLAttributeStatementInfo收集

地圖本金的收藏這個接口的實現,預計新增集合。的上下文處理程序名稱ContextElementDictionary.SAML_ATTRIBUTE_PRINCIPALS「(http://docs.oracle.com/cd/E23943_01/apirefs.1111/e13941/weblogic/security/providers/saml/SAMLIdentityAssertionAttributeMapper.html

當項目在WebLogic 10.3.2上運行時,此行正在完成TLY:

((SecurityTokenContextHandler)contextHandler).addContextElement(ContextElementDictionary.SAML_ATTRIBUTE_PRINCIPALS, principals); 

現在,該項目應該在WebLogic 10.3.6上運行,並使用10.3.6罐子,我無法找到包含ContextElementDictionary.SAML_ATTRIBUTE_PRINCIPALS一個罐子。不幸的是,當使用Google搜索ContextElementDictionary時,我無法在8個搜索結果中找到解決方案。

回答

0

這更是一個評論,但太長張貼這樣...

ContextElementDictionary存在於默認weblogic.jar文件。看到以下結果:

jar -tf /opt/ora/mw/wlserver_10.3/server/lib/weblogic.jar | grep ContextElementD 

weblogic/security/utils/ContextElementDictionary.class 

然而,這個類似乎並沒有包含ContextElementDictionary.SAML_ATTRIBUTE_PRINCIPALS當我做了:

strings weblogic/security/utils/ContextElementDictionary.class 

也許比較這兩個jar文件和這兩個類,看看什麼改變。

+0

確實,那是我遇到的問題。對於10.3.2,該類可以在這個包中找到:'com.bea.common.security.utils.ContextElementDictionary'。對於10.3.6,我在這裏找到它:'weblogic.security.utils.ContextElementDictionary' – Kuurde