[Security:090398]Invalid Subject: principals=[weblogic, Administrators]

探讨了在使用WebLogic部署项目时遇到的跨域发布问题,并详细解释了导致问题的原因及解决办法,通过修正JNDI URL配置,最终实现了项目成功发布。
 

weblogic跨域问题

分类: 09_Oracle ADF issue   3034人阅读  评论(1)  收藏  举报

 weblogic发布项目失败,后台报错:

[java]  view plain copy
  1. Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators]  
  2.  at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)  
  3.  at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)  
  4.  at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)  
  5.  at weblogic.jdbc.common.internal.RmiDataSource_1035_WLStub.getConnection(Unknown Source)  
  6.  at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)  
  7.  at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:111)  
  8.  at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)  
  9.  at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)  
  10.  at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)  
  11.  at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)  
  12.  at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:855)  
  13.  at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:774)  
  14.  at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)  
  15.  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469)  
  16.  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)  
  17.  ... 69 more  

 上网查出,原来是weblogic认为我的项目有越域(跨越)行为,为安全起见,不让成功发布。

检查相关配置文件,原来是一处jndi的url配置错误,weblogic认为项目越域。

<jee:jndi-lookup id="dataSource" jndi-name="jdbc/efr_conDS">
     <jee:environment>
          java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
          java.naming.provider.url=t3://174.34.51.67:7001
          java.naming.security.principal=weblogic
          java.naming.security.credentials=weblogic1
   </jee:environment> 
</jee:jndi-lookup> 

修改后,发布成功。

闲话一句:如果说需要发生越域行为的话,网上说需要设置分别设置两个域之间的信任,详情见网上。

```python class TimeFormatException(Exception): pass def convert_time(time_string): try: hour, minute = time_string.split(":") hour, minute = int(hour), int(minute) if hour < 0 or hour > 23: raise TimeFormatException("Invalid Value for Hour!") if minute < 0 or minute > 59: raise TimeFormatException("Invalid Value for Minute!") if hour < 12: am_pm = "AM" if hour == 0: hour = 12 else: am_pm = "PM" if hour > 12: hour -= 12 return "{:02d}:{:02d} {}".format(hour, minute, am_pm) except ValueError: raise TimeFormatException("Invalid Value for Time!") print("<<<TimeString for format converting in 24-hour notation is 15:20 >>>Time in 12-hour notation is:", convert_time("15:20")) print("<<<TimeString for format converting in 24-hour notation is 27:10", end=" ") try: print(">>>TimeFormatException:", end=" ") print(convert_time("27:10")) except TimeFormatException as e: print(e) print("<<<TimeString for format converting in 24-hour notation is 16:78", end=" ") try: print(">>>TimeFormatException:", end=" ") print(convert_time("16:78")) except TimeFormatException as e: print(e) print("<<<TimeString for format converting in 24-hour notation is abc", end=" ") try: print(">>>TimeFormatException:", end=" ") print(convert_time("abc")) except TimeFormatException as e: print(e) print("<<<TimeString for format converting in 24-hour notation is 6:30 >>>Time in 12-hour notation is:", convert_time("6:30")) print("End of program") ``` 输出: ``` <<<TimeString for format converting in 24-hour notation is 15:20 >>>Time in 12-hour notation is: 03:20 PM <<<TimeString for format converting in 24-hour notation is 27:10 >>>TimeFormatException: Invalid Value for Hour! <<<TimeString for format converting in 24-hour notation is 16:78 >>>TimeFormatException: Invalid Value for Minute! <<<TimeString for format converting in 24-hour notation is abc >>>TimeFormatException: Invalid Value for Time! <<<TimeString for format converting in 24-hour notation is 6:30 >>>Time in 12-hour notation is: 06:30 AM End of program ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值