Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Weblogic9.2 redeploy problem, SecurityException при редеплое 
:(
    Опции темы
jecl
Дата 24.11.2008, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 12.10.2007

Репутация: нет
Всего: нет



Всем привет!
Дело такое. Проект переходит на более новый ВЛ, с вл8.1 на вл9.2.
Не скажу что проблемы редеплоя не было с 8.1, т.к. не пытался, использовал нетбинс и его apply fix, но зачастую просто перезапускал сервер. Но с вл9.2 другое, он мало того что стартует долго, так еще и стопорится около нескольких минут. Выход - требовать машину помощьнее либо решать трабл с редеплоем, и т.к. хрен мне дадут первое, приходится делать лав со вторым.

Суть проблемы.
В приложении используется opsware клиент, opsware сервер крутится также на вл(предположительно на 8.1, но не уверен). Для работы с сервером opsware клиент использует сервисы, доступ же к сервисам осуществляется посредством jndi. 
Итак, я упростил веб приложение, оставив только код аутентификации. При старте ВЛ9.2, все нормально, аутенттфиказия вызывается автоматически и проходит успешно, но стоит сделать елементарный редеплой, как падает SecurityException.

Сначала вызывается коннект метод:
Код

public void connect() {
    OpswClientEndpoint endpoint = OpswClientEndpoint.getInst();
        
        try {
            synchronized(endpoint) {
             endpoint.setJNDIProvider(protocol, sasHost, sasPort, null);//здесь последний параметр - контекст фектори, если нул берется 
//дефолтная, те - "weblogic.jndi.WLInitialContextFactory"
                endpoint.getContext(true);
            }
        }
        catch (UnsupportedProtocol up) {
            logger.error("init::unsupported protocol::",up);
        } 
        catch (Exception e) {
            logger.error("init::connect exception::",e);
        }
    }

далее метод аутентификации:
Код

public boolean authenticate(String sasName, String sasPassword) {
        String token = "";
        //TwistTokenUser user = new TwistTokenUser(sasName, sasPassword, "");
        APIUser user = new APIUserImpl(sasName,sasPassword);
        
     try {
        token = OpswClientEndpoint.authenticate(user);//здесь валится екс при редеплое
                OpswClientEndpoint.getInst().setAPIUser(user); 
        } 
     catch (ClientException e) {
         logger.error("authenticate::failed1::", e);
         return false;
        } 
     catch (AuthenticationException e) {
         logger.error("authenticate::failed2::", e);
            e.printStackTrace();
         return false;
        } 
     catch (RemoteException e) {
         logger.error("authenticate::failed3::", e);
         return false;
        }
        return true;
    }
 

Собственно екс:
Код

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mLCPlatforms' defined in class path resource 

[mlc-platforms.xml]: Invocation of init method failed; nested exception is java.lang.SecurityException:
 [Security:090398]Invalid Subject: weblogic
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1175)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:291)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:189)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
    at ModContextLoaderListener.contextInitialized(ModContextLoaderListener.java:13)
    at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:375)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:83)
    at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1591)
    at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2734)
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:892)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:229)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:565)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:136)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:104)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:128)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:320)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:815)
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1222)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:433)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
java.lang.SecurityException: [Security:090398]Invalid Subject: weblogic
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:195)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:338)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
    at weblogic.jndi.internal.ServerNamingNode_920_WLStub.lookup(Unknown Source)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362)
    at javax.naming.InitialContext.lookup(InitialContext.java:351)
    at com.opsware.client.OpswClientEndpoint.loadInfo(OpswClientEndpoint.java:1101)
    at com.opsware.client.OpswClientEndpoint.getService(OpswClientEndpoint.java:596)
    at com.opsware.client.OpswClientEndpoint.getAuthenticator(OpswClientEndpoint.java:206)
    at com.opsware.client.OpswClientEndpoint.authenticate(OpswClientEndpoint.java:175)
    at com.loudcloud.mlc.service.das.twist.DASDAOBaseTwisterImpl.authenticate(DASDAOBaseTwisterImpl.java:105)
    at com.loudcloud.mlc.service.das.MLCPlatforms.init(MLCPlatforms.java:98)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1242)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1208)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:291)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:189)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
    at ModContextLoaderListener.contextInitialized(ModContextLoaderListener.java:13)
    at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:375)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:83)
    at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1591)
    at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2734)
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:892)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)

    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:229)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:565)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:136)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:104)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:128)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:320)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:815)
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1222)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:433)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
java.lang.SecurityException: [Security:090398]Invalid Subject: weblogic
    at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:698)
    at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:205)
    at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:841)
    at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:307)
    at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:1114)
    at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:1032)
    at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
    at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:809)
    at weblogic.rjvm.http.HTTPServerJVMConnection.dispatch(HTTPServerJVMConnection.java:399)
    at weblogic.rjvm.http.TunnelSendServlet.service(TunnelSendServlet.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.Kernel.execute(Kernel.java:343)
    at weblogic.servlet.internal.WebAppServletContext.dispatch(WebAppServletContext.java:3666)
    at weblogic.servlet.internal.MuxableSocketHTTP.dispatch(MuxableSocketHTTP.java:801)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.MuxableSocketDiscriminator.dispatch(MuxableSocketDiscriminator.java:286)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:718)
    at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:664)
    at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
    at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> 
####<24.11.2008 14:40:45 EET> <Info> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530445812> <BEA-149059> 
<Module Test1 of application _auto_generated_ear_ is transitioning from STATE_ADMIN to STATE_PREPARED on server AdminServer.> 
####<24.11.2008 14:40:45 EET> <Info> <ServletContext-/Test1> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <weblogic> <> <> <1227530445890> <000000>
<Closing Spring root WebApplicationContext> 
####<24.11.2008 14:40:45 EET> <Info> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530445890> <BEA-149060> 
<Module Test1 of application _auto_generated_ear_ successfully transitioned from STATE_ADMIN to STATE_PREPARED on server AdminServer.> 
####<24.11.2008 14:40:45 EET> <Info> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530445890> <BEA-149059> 
<Module Test1 of application _auto_generated_ear_ is transitioning from STATE_PREPARED to STATE_NEW on server AdminServer.> 
####<24.11.2008 14:40:45 EET> <Info> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530445890> <BEA-149060> 
<Module Test1 of application _auto_generated_ear_ successfully transitioned from STATE_PREPARED to STATE_NEW on server AdminServer.> 
####<24.11.2008 14:40:45 EET> <Error> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530445890> <BEA-149265>
 <Failure occured in the execution of deployment request with ID '1227530156046' for task '3'. Error is: 'weblogic.application.ModuleException: '
weblogic.application.ModuleException: 
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:894)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:229)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:565)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:136)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:104)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:128)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:320)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:815)
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1222)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:433)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
java.lang.SecurityException: [Security:090398]Invalid Subject: weblogic
    at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:698)
    at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:205)
    at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:841)
    at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:307)
    at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:1114)
    at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:1032)
    at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
    at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:809)
    at weblogic.rjvm.http.HTTPServerJVMConnection.dispatch(HTTPServerJVMConnection.java:399)
    at weblogic.rjvm.http.TunnelSendServlet.service(TunnelSendServlet.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.Kernel.execute(Kernel.java:343)
    at weblogic.servlet.internal.WebAppServletContext.dispatch(WebAppServletContext.java:3666)
    at weblogic.servlet.internal.MuxableSocketHTTP.dispatch(MuxableSocketHTTP.java:801)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.MuxableSocketDiscriminator.dispatch(MuxableSocketDiscriminator.java:286)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:718)
    at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:664)
    at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
    at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> 
####<24.11.2008 14:40:46 EET> <Error> <Deployer> <PC404> <AdminServer> <[STANDBY] ExecuteThread: '2' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530446031> <BEA-149202>
 <Encountered an exception while attempting to commit the 7 task for the application '_auto_generated_ear_'.> 
####<24.11.2008 14:40:46 EET> <Warning> <Deployer> <PC404> <AdminServer> <[ACTIVE] ExecuteThread: '9' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530446250> <BEA-149004> 
<Failures were detected while initiating start task for application '_auto_generated_ear_'.> 
####<24.11.2008 14:40:46 EET> <Warning> <Deployer> <PC404> <AdminServer> <[ACTIVE] ExecuteThread: '9' 
for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1227530446250> <BEA-149078>
 <Stack trace for message 149004
weblogic.application.ModuleException: 
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:894)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:229)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:565)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:136)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:104)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:128)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:320)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:815)
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1222)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:433)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
    at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
java.lang.SecurityException: [Security:090398]Invalid Subject: weblogic
    at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:698)
    at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:205)
    at weblogic.rmi.internal.BasicServerRef.acceptRequest(BasicServerRef.java:841)
    at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:307)
    at weblogic.rjvm.RJVMImpl.dispatchRequest(RJVMImpl.java:1114)
    at weblogic.rjvm.RJVMImpl.dispatch(RJVMImpl.java:1032)
    at weblogic.rjvm.ConnectionManagerServer.handleRJVM(ConnectionManagerServer.java:225)
    at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:809)
    at weblogic.rjvm.http.HTTPServerJVMConnection.dispatch(HTTPServerJVMConnection.java:399)
    at weblogic.rjvm.http.TunnelSendServlet.service(TunnelSendServlet.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.Kernel.execute(Kernel.java:343)
    at weblogic.servlet.internal.WebAppServletContext.dispatch(WebAppServletContext.java:3666)
    at weblogic.servlet.internal.MuxableSocketHTTP.dispatch(MuxableSocketHTTP.java:801)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.MuxableSocketDiscriminator.dispatch(MuxableSocketDiscriminator.java:286)
    at weblogic.socket.SSLFilter.dispatch(SSLFilter.java:281)
    at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:718)
    at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:664)
    at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:123)
    at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> 


После чего приложение падает, и возобновляет работу только после перезагрузки сервера.
И суть в том, что контекст закрывается при вызове метода endpoint.getContext(true);
в декомпилированном коде клиента видно что при вызове метода getContext, вызывается сначала дисконнект, который и закрывает контекст.
Также пробовал явно вызывать дисконнект во время редеплоя:
Код

public class ModContextLoaderListener extends ContextLoaderListener{

    public void contextInitialized(ServletContextEvent sce){
        super.contextInitialized(sce);
    }

    public void contextDestroyed(ServletContextEvent sce){
        try {
            OpswClientEndpoint.getInst().disconnect();
        } catch (CloseFailed e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        super.contextDestroyed(sce);
    }

}

Из доступных апи клиента, установить вручную энвайрмент параметры для контекста нельзя, вся нужная инфа передается тут: endpoint.setJNDIProvider(protocol, sasHost, sasPort, null);. Остальные же параметры, такие как Context.SECURITY_CREDENTIALS, Context.SECURITY_PRINCIPAL берутся по дефолту, и самое удивительное что по дефолту это guest/guest а по сути weblogic/weblogic(но последнее догадки, основанные на секьюрити ексе).
Единственное что я нашел по этому поводу - переписка, сохраненная в кеше гугла:
Invalid+Subject&hl=uk&ct=clnk&cd=1&gl=ua&client=firefox-a]линк
Из которойя понял что InitialContext перезаписывается, что и вызывает екс, но как это обойти?
Пробовал реализовывать свою контекст фектори, в которой каждый раз генерировал уникальные Context.SECURITY_CREDENTIALS и Context.SECURITY_PRINCIPAL, но это вызвало только внутреннюю ошибку ВЛа, не помню какую именно, если надо могу запостить.
Сейчас попробую поиграться с weblogic.jndi.Environment классом.
Буду рад любым советам, спасибо за время.


PM MAIL   Вверх
jecl
Дата 24.11.2008, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 12.10.2007

Репутация: нет
Всего: нет



Свежая инфа - переписал это приложения без спринга, - редеплой работает без проблем... У кого-то есть мысли какое спринг имеет отношение к создаваемому InitialContext через влКонтекстФектори?
Да, еще
InvalidSubject: weblogic
weblogic здесь - юзер админской роли, те тот пользователь который запустил админ консоль.
PM MAIL   Вверх
jecl
Дата 27.11.2008, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 12.10.2007

Репутация: нет
Всего: нет



Причину проблемы так и не нашел, но воркераунд нашелся: lazy-init="true" бину, который дергает коннект и аутентификейт методы.
Т.е. по сути меняется поток создающий бин..
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1944 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.