我继承了一个应用程序(我的公司内部),它使用在Internet Explorer中运行的javascript,它使Ajax调用在WebLogic Server v10中运行的基于Struts的应用程序.
系统中的某些服务器端操作花费的时间超过3分钟.用户始终注意到Ajax调用在3分钟标记处返回503错误.我的用户可以等待超过3分钟,但503错误会中断他们的工作.
此应用程序需要进行性能调整,但我们非常需要一个临时的解决方法来延长返回503错误之前可以发生的时间.
目前的理论是IE XMLHttpRequest对象引发了503错误.一组假想的WebLogic专家倾注了我们的代码和WebLogic日志,并声明服务器端没有发生超时.但我有疑虑.
我的问题是,哪一个软件负责引发503错误:浏览器,Ajax javascript或服务器?这个超时期限可以改变吗?
TOMCAT服务器和BEA WEBLOGIC服务器有什么区别
我需要一个自定义属性来为Weblogic中的每个服务器JVM设置.这样做的好方法是什么?
我知道我们可以指定如下的论据:
我的问题是如何定义参数?如何在将在JVM中部署的应用程序中使用该参数.
编辑
如果我指定,-DMyArg=MyValue
并在代码中,value=System.getproperty("MyValue"); 这应该工作,对吧?
我正在尝试在weblogic上运行Java EE应用程序.该应用程序在Tomcat上运行正常.我已经定义了war文件以包含weblogic.xml.该文件包含以下代码: -
<container-descriptor>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>
Run Code Online (Sandbox Code Playgroud)
我还更改了应用程序的属性文件中的配置,以反映容器正在侦听的端口.server.port = 7001 server.modjk.enabled = false
我的web.xml文件包含以下代码: -
<servlet>
<servlet-name>olatservlet</servlet-name>
<servlet-class>org.olat.core.servlets.OLATServlet</servlet-class>
<!-- Set the load order -->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>olatservlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>olatservlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)
当我最初在weblogic 11g上运行war文件时,我得到了一个nullpointer异常.但是,当我从lib文件夹中删除XerceImpl.jar时,我可以部署该文件.现在我能够成功部署应用程序.我将weblogic中的上下文根命名为war文件的名称.当我尝试在其测试选项卡中打开weblogic生成的链接时,出现以下错误: -
错误403 - 禁止
来自RFC 2068超文本传输协议 - HTTP/1.1:
10.4.4 403禁止
服务器理解请求,但拒绝履行请求.授权无效,请求不应重复.如果请求方法不是HEAD并且服务器希望公开为什么请求没有得到满足,那么它应该描述实体中拒绝的原因.当服务器不希望确切地说明请求被拒绝的原因,或者没有其他响应适用时,通常会使用此状态代码.
我想知道是否有人可以告诉我如何解决这个问题.
我已经开发了这个概念验证https://github.com/DISID/disid-proofs/tree/master/spring-boot-weblogic来测试Weblogic 12c(12.2.1)中Spring Boot应用程序的部署.
应用程序部署并成功启动,但是当我尝试连接到它时(即/ accounts?number = 1234),将显示以下错误:
Error 500--Internal Server Error
From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
10.5.1 500 Internal Server Error
The server encountered an unexpected condition which prevented it
from fulfilling the request.
Run Code Online (Sandbox Code Playgroud)
并且日志文件有例外:
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/dispatcherServlet-servlet.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/dispatcherServlet-servlet.xml]
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:609)
at …Run Code Online (Sandbox Code Playgroud) 您是否了解WebLogic 8.1中使用的weblogic.socket.Muxer是什么?
通常在线程转储中,我看到类似于此的堆栈跟踪:
"ExecuteThread: '0' for queue: 'weblogic.socket.Muxer'" id=20 idx=0x68 tid=26709 prio=5 alive, in native, blocked, daemon
-- Blocked trying to get lock: java/lang/String@0x2b673d373c50[fat lock]
at jrockit/vm/Threads.waitForUnblockSignal()V(Native Method)
at jrockit/vm/Locks.fatLockBlockOrSpin(Locks.java:1675)[optimized]
at jrockit/vm/Locks.lockFat(Locks.java:1776)[optimized]
at jrockit/vm/Locks.monitorEnterSecondStageHard(Locks.java:1312)[optimized]
at jrockit/vm/Locks.monitorEnterSecondStage(Locks.java:1259)[optimized]
at jrockit/vm/Locks.monitorEnter(Locks.java:2439)[optimized]
at weblogic/socket/EPollSocketMuxer.processSockets(EPollSocketMuxer.java:153)
at weblogic/socket/SocketReaderRequest.run(SocketReaderRequest.java:29)
at weblogic/socket/SocketReaderRequest.execute(SocketReaderRequest.java:42)
at weblogic/kernel/ExecuteThread.execute(ExecuteThread.java:145)
at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:117)
at jrockit/vm/RNI.c2java(JJJJJ)V(Native Method)
-- end of trace
Run Code Online (Sandbox Code Playgroud)
这不是我有任何问题,它只是有趣的理解:
1)它在做什么?
2)它会影响任何表现吗?
我正在开发一个JavaEE系统(在Weblogic App Server上分发),但我没有JavaEE包的源代码(例如javax.ejb.*).
我在哪里可以找到这些包的来源(而不是javadoc)?
在JSF 2.0.9上运行,Weblogic 10.3.4.我们现在在生产环境中运行JSF,但遇到了会话复制和故障转移的一些问题.我们正在为我们的bean使用viewcope,并确保它们是Serializable/transient,并且瞬态变量实际上是无状态的.但是会话故障转移不起作用.我已经做了大量的测试,并设法通过在web.xml中设置以下参数来使其工作
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
<param-value>false</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
如果我设置STATE_SAVING_METHOD为server我在故障转移时获得一个viewexpired异常.如果我设置为client同PARTIAL_STATE_SAVING来true我得到以下错误:
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at javax.faces.component.AttachedObjectListHolder.restoreState(AttachedObjectListHolder.java:165)
at javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:1433)
at com.sun.faces.application.view.StateManagementStrategyImpl$1.visit(StateManagementStrategyImpl.java:265)
at com.sun.faces.component.visit.FullVisitContext.invokeVisitCallback(FullVisitContext.java:151)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1507)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1521)
at com.sun.faces.component.visit.VisitUtils.doFullNonIteratingVisit(VisitUtils.java:75)
at com.sun.faces.application.view.StateManagementStrategyImpl.restoreView(StateManagementStrategyImpl.java:282)
at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:181)
at com.sun.faces.application.view.ViewHandlingStrategy.restoreView(ViewHandlingStrategy.java:123)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.restoreView(FaceletViewHandlingStrategy.java:448)
at com.sun.faces.application.view.MultiViewHandler.restoreView(MultiViewHandler.java:148)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:187)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:111)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
at …Run Code Online (Sandbox Code Playgroud) 询问(和回答)这个问题只是为了与SO社区分享一些知识.
我最近提出了我的Web应用程序的部署异常(在收到SVN Repository的一些更改后),其中说:
任务'1'的错误> <Deployer> ID为'1350377960779'.错误是:'com.rsa.jsafe.JSAFE_PaddingException:无法执行取消填充:无效的填充字节.com.rsa.jsafe.JSAFE_PaddingException:无法执行取消填充:无效的填充字节.at com.rsa.jsafe.ca(Unknown Source)at com.rsa.jsafe.JSAFE_SymmetricCipher.decryptFinal(Unknown Source)at weblogic.security.encry.JSafeEncryptionServiceImpl.decryptBytes(JSafeEncryptionServiceImpl.java:124)at weblogic.security. internal.encryption.JSafeEncryptionServiceImpl.decryptString(JSafeEncryptionServiceImpl.java:184)at weblogic.security.internal.encryption.ClearOrEncryptedService.decrypt(ClearOrEncryptedService.java:96)截断.请参阅日志文件以获取完整的堆栈跟踪引起:com.rsa.jsafe.JSAFE_PaddingException:无法执行取消填充:无效的填充字节.
我正在开发一个基于JMX的Weblogic运行状况监控代码库.我试图获取所有部署测试点的列表(http地址,如下面的快照所示),并查看该Web地址是否可访问.
有没有办法在Weblogic的Java API中访问这些测试点的列表?它们位于[server_name]- > deployment(左侧菜单) - > [app name]- > Testing窗格下," Deployment Tests"表格下.
weblogic ×10
java-ee ×4
java ×3
ajax ×1
http ×1
jdeveloper ×1
jmx ×1
jsf ×1
muxer ×1
oracle ×1
sockets ×1
spring-boot ×1
spring-mvc ×1
timeout ×1
tomcat ×1
war ×1
weblogic11g ×1
weblogic12c ×1
weblogic8.x ×1
wlst ×1