WebLogic Portal VCR IllegalMonitorStateException到JSR-170存储库的连接

WebLogic Portal VCR IllegalMonitorStateException到JSR-170存储库的连接,weblogic,portal,jackrabbit,Weblogic,Portal,Jackrabbit,我们最近已从WebLogic Portal 9.2.3升级到10.3.5。我们有一个通过日间软件JSR-170 VCR-JCR提供商连接的JackRabbit存储库。这一切在9.2.3上运行得非常好,但是在10.3.5上,当我们试图检索内容时,我们得到了一个非法的MonitorStateException。我们在JackRabbit之上有自己的门面,它实现了JCR-170。以下是从服务器上进行的调试: [com.bea.content.federated.internal.delegate.Re

我们最近已从WebLogic Portal 9.2.3升级到10.3.5。我们有一个通过日间软件JSR-170 VCR-JCR提供商连接的JackRabbit存储库。这一切在9.2.3上运行得非常好,但是在10.3.5上,当我们试图检索内容时,我们得到了一个非法的MonitorStateException。我们在JackRabbit之上有自己的门面,它实现了JCR-170。以下是从服务器上进行的调试:

[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2b70161: (re)initializing all repo sessions for username: <WLS Kernel>
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2bf2311: (re)initializing all repo sessions for username: <WLS Kernel>
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2fa5952: (re)initializing all repo sessions for username: <anonymous>
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.ensureConnectedToRepository():801] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2fa5952: no session found for repoName=indhold; need to connect
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.ensureConnectedToRepository():821] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2fa5952: connect write lock acquired for repoName=indhold
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connectToRepository():875] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2fa5952: connecting to repositoryName= indhold
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepositoryClass():1503] invoking Class.forName(repoClassName)
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepository():1403] com.bea.content.federated.internal.delegate.RepositoryManagerDelegate@2fa5952: Ticket authentication error for: indhold java.lang.IllegalMonitorStateException
at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:363)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1317)
at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:745)
at com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepositoryClass(RepositoryManagerDelegate.java:1537)
at com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepository(RepositoryManagerDelegate.java:1327)
at com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connectToRepository(RepositoryManagerDelegate.java:893)
at com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.ensureConnectedToRepository(RepositoryManagerDelegate.java:832)
at com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connect(RepositoryManagerDelegate.java:1160)
at com.bea.content.federated.internal.delegate.RepositoryHelper.checkCapability(RepositoryHelper.java:759)
at com.bea.content.federated.internal.CapabilityManagerImpl.checkRepositoryCapability(CapabilityManagerImpl.java:57)
at com.bea.content.federated.internal.ManagerImplCapabilityHelper.checkCapability(ManagerImplCapabilityHelper.java:80)
at com.bea.content.federated.internal.ManagerImplCapabilityHelper.verifyCapability(ManagerImplCapabilityHelper.java:54)
at com.bea.content.federated.internal.NodeManagerImpl.getNode(NodeManagerImpl.java:432)
at dk.skat.portal.front.helper.ContentHelper.getNode(ContentHelper.java:1591)
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2b70161:(重新)初始化用户名的所有回购会话:
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2bf2311:(重新)初始化用户名的所有回购会话:
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.initializeSessionState():1215]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2fa5952:(重新)初始化用户名的所有回购会话:
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.EnsureReconnectedToRepository():801]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2fa5952:找不到repoName=indhold的会话;需要连接
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.EnsureReconnectedToRepository():821]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2fa5952:为repoName=indhold获取连接写入锁
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connectToRepository():875]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2fa5952:连接到repositoryName=indhold
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepositoryClass():1503]调用Class.forName(reposclassname)
[com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepository():1403]com.bea.content.federated.internal.delegate。RepositoryManagerDelegate@2fa5952:indhold java.lang.IllegalMonitorStateException的票证身份验证错误
位于java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:363)
位于java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1317)
位于java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:745)
位于com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepositoryClass(RepositoryManagerDelegate.java:1537)
位于com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.getRepository(RepositoryManagerDelegate.java:1327)
位于com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connectToRepository(RepositoryManagerDelegate.java:893)
在com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.ensureReconnectedToRepository(RepositoryManagerDelegate.java:832)
位于com.bea.content.federated.internal.delegate.RepositoryManagerDelegate.connect(RepositoryManagerDelegate.java:1160)
位于com.bea.content.federated.internal.delegate.RepositoryHelper.checkCapability(RepositoryHelper.java:759)
在com.bea.content.federated.internal.CapabilityManagerImpl.checkRepositoryCapability(CapabilityManagerImpl.java:57)
位于com.bea.content.federated.internal.ManagerImplCapabilityHelper.checkCapability(ManagerImplCapabilityHelper.java:80)
位于com.bea.content.federated.internal.ManagerImplCapabilityHelper.verifyCapability(ManagerImplCapabilityHelper.java:54)
位于com.bea.content.federated.internal.nodeManager impl.getNode(nodeManager impl.java:432)
位于dk.skat.portal.front.helper.ContentHelper.getNode(ContentHelper.java:1591)
authenticationn似乎失败了,但如果我尝试在存储库中的登录方法中设置断点(我们的Facade,它不进行任何身份验证挑战,只包装JackRabbit,并在同一个用户(“默认”)中登录所有访问),我们永远不会被调用。在“管理存储库”页面上设置用户名和密码似乎没有任何效果。 另一方面,如果我转到门户管理控制台,并尝试管理或浏览存储库,则一切正常,登录方法实际上被调用,服务器与存储库的连接正常。 这似乎很奇怪。在某些情况下(这种情况碰巧是随机发生的,我们可以让服务器突然进入存储库,但在重新启动服务器时,它又会再次出现故障)

我尝试将存储库的用户名/密码设置为weblogic用户,但这似乎没有任何效果,我仍然收到错误。 此外,当我进入PAC并注销、关闭浏览器、重新打开浏览器或完全不同的浏览器时,进入PAC似乎会激活存储库,使其联机(尽管这并不稳定或理想)

请注意,如果WebLogic中有一个bug(它似乎多次尝试解锁()ReadLock,导致出现上述异常-它是否应该在该异常中失败??,是否应该在解锁前检查锁计数?),或者如果w有任何错误?我可以读到10.3.5版本的eclipse工具中有一个已知的错误,就是关于这个错误


此外,我们在9.2.3中似乎没有遇到任何问题,在10.3.5中发生了什么变化?

有相同的问题,在这里找到了解决方案

简而言之,这是一个产品缺陷,请向Oracle请求以下修补程序:

WLP Version: 10.3.5
Patch Name/Patch Number/Bug Number: 14377862
Smart Update Patch ID: HPV8

谢谢,我发现了,在我反编译代码并自己修复错误之后。补丁现在打开了。