标签: weblogic12c

阻止Weblogic 12c使用系统的slf4j绑定

我们正在使用slf4j构建新的systen作为日志记录.在新的Weblogic 12c上部署时,我们在控制台日志中发现了这个错误:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/Oracle/Middleware2/modules/org.slf4j.jdk14_1.6.1.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [zip:/opt/Oracle/Middleware2/user_projects/domains/m3/servers/AdminServer/tmp/_WL_user/test/t030q4/war/WEB-INF/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
Run Code Online (Sandbox Code Playgroud)

在谷歌搜索之后,我们发现这只是一个警告,slf4j将绑定第一个找到的记录器,在这种情况下是weblogic的系统记录器框架.有没有办法让它绑定到我们的WAR文件中的日志框架?在weblogic.xml中使用<prefer-web-inf-classes>没有帮助

weblogic slf4j weblogic12c

14
推荐指数
2
解决办法
2万
查看次数

错误:无法从Oracle WebLogic Server 12.1.3.0开始两次加载此JVM TI代理

我正在启动Oracle WebLogic Server 12.1.3.0,我已经托管了一些WEb应用程序,但我无法启动它,因为我有一个错误

使用Java版本启动weblogic:

%JAVA_HOME%\bin\java %JAVA_VM% -version

if "%WLS_REDIRECT_LOG%"=="" (
    echo Starting WLS with line:
    echo %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WLS_POLICY_FILE% %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%
    %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WLS_POLICY_FILE% %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%
) else (
    echo Redirecting output from WLS window to %WLS_REDIRECT_LOG%
    %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WLS_POLICY_FILE% %JAVA_OPTIONS% %PROXY_SETTINGS% %SERVER_CLASS%  >"%WLS_REDIRECT_LOG%" 2>&1 
)
Run Code Online (Sandbox Code Playgroud)

但我得到了这个错误:

C:\myprograms\Tools\tracesnt>startWebLogic.cmd
.
.
JAVA Memory arguments: -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m  -XX:MaxPermSize=256m
.
CLASSPATH=C:\PROGRA~2\Java\JDK18~1.0_6\lib\tools.jar;C:\myprograms\Tools\wls12130\wlserver\server\lib\weblogic_sp.jar;C:\myprograms\Tools\wls12130\wlserver\server\lib\weblogic.jar;C:\myprograms\Tools\wls12130\wlserver\server\lib\webservices.jar;C:\myprograms\Tools\wls12120\oracle_common\modules\org.apache.ant_1.7.1/lib/ant-all.jar;C:\myprograms\Tools\wls12120\oracle_common\modules\net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar
;C:\myprograms\Tools\wls12130\wlserver\modules\features\oracle.wls.common.nodemanager_1.0.0.0.jar;C:\myprograms\Tools\wls12120\oracle_common\modules\com.oracle.cie.config-wls-online_8.1.0.0.jar;C:\myprograms\Tools\wls12130\wlserver\common\derby\lib\derbyclient.jar;C:\myprograms\Tools\wls12130\wlserver\common\derby\lib\derby.jar;C:\myprograms\Tools\wls12130\wlserver\server\lib\xqrl.jar
.
PATH=;C:\myprograms\Tools\wls12130\wlserver\server\native\win\32;C:\myprograms\Tools\wls12130\wlserver\server\bin;C:\myprograms\Tools\wls12120\oracle_common\modules\org.apache.ant_1.7.1\bin;C:\PROGRA~2\Java\JDK18~1.0_6\jre\bin;C:\PROGRA~2\Java\JDK18~1.0_6\bin;C:\PROGRA~3\Oracle\Java\javapath;C:\myprograms\Oracle\product\112~1.0\CLIENT~1\bin;C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem;C:\Windows\System32\WINDOW~1\
v1.0\;C:\Windows\idmu\common;C:\myprograms\ZANTAZ\EASOUT~1.2\bin;C:\PROGRA~2\MIE3C7~1;C:\Windows\System32\WINDOW~1\v1.0\;C:\PROGRA~1\TORTOI~1\bin;C:\myprograms\APACHE~2.3\bin;C:\TD\TD_RF_~1.0\gnu\bin;C:\myprograms\WLSTAP~1.2\bin;C:\myprograms\PHANTO~1.0-W;C:\myprograms\RUBY-2~1.2-X\bin;C:\myprograms\RUBY-2~1.3-X;C:\PROGRA~2\Java\JDK17~1.0_7\bin;C:\PROGRA~2\QUICKT~1\QTSystem\;C:\myprograms\Tools\wls12130\wlserver\server\native\win\32\oci920_8
.
***************************************************
*  To start WebLogic Server, …
Run Code Online (Sandbox Code Playgroud)

java weblogic12c

14
推荐指数
1
解决办法
2万
查看次数

Eclipse在调试模式下启动Weblogic错误:"无法连接到远程VM"

我知道可能会多次询问这个问题,但我的问题有点不同.

我可以在Eclipse中启动Weblogic服务器而不会出错.

我试图在Eclipse Weblogic Server中以调试模式启动调试LOCAL应用程序(而不是远程调试),但是我得到了"无法连接到远程VM"错误.为了确保问题来自Eclipse,我debugFlag=true在bin\setDomainEnv.cmd中使用startWeblogic.cmd手动启动了Weblogic ,然后在Eclipse中尝试使用相同的调试端口调试远程Java应用程序,调试工作没有错误.

我还尝试比较两种启动方法的输出,它们都包含"使用行启动WLS"的选项:-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8022,server=y,suspend=n.唯一的区别是Eclipse中有java版本,但Weblogic版本没有.

我在Eclipse中尝试了解决方案错误:"无法连接到远程VM",检查调试端口是否被占用,并且它被相同的进程java占用.

另一个奇怪的事情是,当我在服务器停止时在Eclipse中启动调试模式时,错误会出现一次.当我在服务器启动时在Eclipse中启动调试时,会出现两次相同的错误.

我在Eclipse中使用代理,我必须这样做.但是在没有这样的错误之前我使用了相同的配置.

你能帮我找一些我可以检查Weblogic Eclipse插件的东西吗?非常感谢!

java eclipse debugging weblogic12c

14
推荐指数
1
解决办法
1716
查看次数

SOA套件到Axis2数据被删除

我们正在将WebLogic 10.3.5 Web应用程序迁移到WebLogic 12.1.3,并且我们遇到了一个我们认为可能与Web服务安全性相关的问题.该应用程序使用Axis 1.5.6调用SOA Suite SOAP服务(仍在WebLogic 10.3.5上运行).禁用Web服务安全性后,我们会收到预期的响应:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns3:getNamesResponse 
    xmlns:ns2="http://www.example.com/ABC/Common" 
    xmlns:ns3="http://www.example.com/ABC/Profile">
    <ns3:OperatingName>
        <ns3:Number>123456789</ns3:Number>
        <ns3:Name>Company Name, Inc.</ns3:Name>
    </ns3:OperatingName>
</ns3:getNamesResponse>
Run Code Online (Sandbox Code Playgroud)

但是一旦启用了Web服务安全性(使用Apache Rampart 1.5.2,Apache Neethi 2.0.5),我们就会开始收到空响应:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:getNamesResponse 
    xmlns:ns2="http://www.example.com/ABC/Profile" 
    xmlns:ns4="http://www.example.com/ABC/Common" />
Run Code Online (Sandbox Code Playgroud)

奇怪的是,在查看SOA套件控制台时,SOA中的响应回到Web应用程序(启用了安全性)看起来是正确的:

<message>
    <properties>
        <property  name="tracking.compositeInstanceId"  value="2110209"/>
        <property  name="tracking.ecid"  value="0058XKIkdpHFw00Fzzw0w00004Et005Kmk"/>
        <property  name="ws.wsu.id"  value="Body-Body_tTzuB5XmRNQPR7Y7"/>
    </properties>
    <parts>
        <part  name="getNamesResponse">
            <bp:getNamesResponse>
                <bp:OperatingName>
                    <bp:Number>123456789</bp:Number>
                    <bp:Name>Company Name, Inc.</bp:Name>
                </bp:OperatingName>
            </bp:getNamesResponse>
        </part>
    </parts>
</message>
Run Code Online (Sandbox Code Playgroud)

没有记录异常.还有其他人经历过并解决过这类问题吗?

java axis2 web-services weblogic weblogic12c

13
推荐指数
1
解决办法
202
查看次数

Spring Boot异常:无法打开ServletContext资源[/WEB-INF/dispatcherServlet-servlet.xml]

我已经开发了这个概念验证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 spring-mvc weblogic12c spring-boot

13
推荐指数
2
解决办法
1万
查看次数

无法在Weblogic 12c(12.2.1)中部署CXF3.x JAX-RS服务

将使用CXF3.x构建的JAX-RS服务从weblogic 12.1.3升级到12.2.1后,我面临以下奇怪的问题

<03-ago-2017, 3:22:38,789 PM CEST> <Error> <HTTP> <BEA-101216> <Servlet: "JAX-RS/Jersey#1" failed to preload on startup in Web application: "sife".
A MultiException has 1 exceptions.  They are:
1. java.lang.LinkageError: ClassCastException: attempting to castzip:C:/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_user/sife/845176/war/WEB-INF/lib/javax.ws.rs-api-2.0.1.jar!/javax/ws/rs/ext/RuntimeDelegate.class to jar:file:/C:/Oracle/Middleware/Oracle_Home/oracle_common/modules/javax.ws.rs.javax.ws.rs-api.jar!/javax/ws/rs/ext/RuntimeDelegate.class

        at org.jvnet.hk2.internal.Utilities.justCreate(Utilities.java:1007)
        at org.jvnet.hk2.internal.ServiceLocatorImpl.create(ServiceLocatorImpl.java:962)
        at org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize(ServiceLocatorImpl.java:1054)
        at org.jvnet.hk2.internal.ServiceLocatorImpl.createAndInitialize(ServiceLocatorImpl.java:1046)
        at org.glassfish.jersey.model.internal.CommonConfig.configureFeatures(CommonConfig.java:696)
        Truncated. see log file for complete stacktrace
Run Code Online (Sandbox Code Playgroud)

请注意,我使用的是CXF,而不是Jersey,但似乎Weblogic正在尝试使用它(12.1.3不会发生这种情况).我按照以下建议在配置文件中禁用了它:https://jerometambo.github.io/blog/2016/12/13/How-to-use-CXF-3x-implementation-of-JAX-RS-20-REST-与-WebLogic的12c.html

使用默认配置,Weblogic希望使用其内部实现(JAX-RS 2.0和序列化)来部署REST Web服务(错误500):

META-INF/weblogic的-application.xml中

<weblogic-application  xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-application"
                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                       xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-application
                                           http://xmlns.oracle.com/weblogic/weblogic-application/1.8/weblogic-application.xsd">

    <prefer-application-packages>
        <package-name>javax.ws.rs.*</package-name>
        <package-name>com.fasterxml.jackson.*</package-name>
        <package-name>weblogic.jaxrs.api.client.*</package-name>
        <package-name>weblogic.jaxrs.internal.api.*</package-name>
        <package-name>weblogic.jaxrs.dispatch.*</package-name>
        <package-name>weblogic.jaxrs.monitoring.util.*</package-name>
    </prefer-application-packages>
</weblogic-application>
Run Code Online (Sandbox Code Playgroud)

WEB-INF/weblogic.xml中

<weblogic-web-app 
    xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd …
Run Code Online (Sandbox Code Playgroud)

java web-services cxf jax-rs weblogic12c

13
推荐指数
1
解决办法
5441
查看次数

可以在WebLogic 12c上使用MyFaces + CDI吗?

我一直试图让这个设置运行几天,但仍然没有运气.这是我一直在使用的测试应用程序:

@Named
@RequestScoped
public class Test {

    private String test = "test";
    public String getTest() { return test; }
    public void setTest(String test) { this.test = test; }
}
Run Code Online (Sandbox Code Playgroud)

在jsf页面中:

<h:outputText value="#{test.test}"/>
Run Code Online (Sandbox Code Playgroud)

在没有MyFaces的情况下运行此示例工作正常(呈现"测试"应该如此),但是当我在WAR文件中部署MyFaces并在weblogic.xml中执行必要的配置时,CDI似乎停止工作(或者至少是JSF和CDI)并且输出html中没有显示任何内容.不过,MyFaces本身似乎没问题.

我的基本配置如下:

  • WebLogic Server 12c(12.1.1.0),补丁应该是最新的,因为我刚刚下载了一个开发版本,只是为了确保
  • MyFaces-2.1.10,部署在WEB-INF/libs中
  • Beans.xml已经到位
  • org.apache.myfaces.webapp.StartupServletContextListener已在web.xml中注册
  • WebLogic配置为使用weblogic.xml来使用MyFaces

Weblogic.xml内容:

<prefer-application-packages>
    <package-name>javax.faces.*</package-name>
    <package-name>com.sun.faces.*</package-name>
    <package-name>com.bea.faces.*</package-name>
</prefer-application-packages>
<prefer-application-resources>
    <resource-name>javax.faces.*</resource-name>
    <resource-name>com.sun.faces.*</resource-name>
    <resource-name>com.bea.faces.*</resource-name>
    <resource-name>META-INF/services/javax.servlet.ServletContainerInitializer</resource-name>
    <resource-name>META-INF/services/com.sun.faces.spi.FacesConfigResourceProvider</resource-name>
</prefer-application-resources>
Run Code Online (Sandbox Code Playgroud)

到目前为止我学到了什么:

  • WL12c配备了Weld 1.1.3,因为它的CDI实现.
  • 我读到某处(不记得在哪里)每当你决定切换JSF实现时,你自己负责集成JSF/CDI.这是真的吗(肯定不希望)?

到目前为止我尝试过的事情:

  • 将MyFaces CODI添加到混合物中,希望它能以某种方式将Weld和MyFaces粘合在一起,但事实并非如此.
  • 将OpenWebBeans替换为Weld作为CDI实现.这似乎最初起作用,但稍后在一些内部sun.reflection包中提供了各种有趣的ClassCastExceptions.无论如何,这是一个我宁愿避免的解决方案.
  • 使用web.xml和faces-config.xml中的各种选项手动触发Weld.这似乎让Weld继续使用各种错误消息来淹没日志.在某种程度上,这些可以通过将weblogic升级到更新的Weld版本来"修复",但每次我这样做时都会遇到下一个错误.再说一遍,我宁愿避开这条路线.

在保留CDI支持的同时在WL12c上使用MyFaces真的很难吗?或者我只是错过了明显的问题?谢谢你的帮助.

jsf myfaces cdi weblogic12c

12
推荐指数
1
解决办法
2761
查看次数

Intellij调试器不会在断点处停止

我一定是在做错事.我是intellij的新手.从日食中切换.我有一个在weblogic上运行的JAX WS应用程序.要部署的工件是ear文件.我一直在努力让intellij工作的调试器.我有终极版.我确实创建了一个运行调试配置,但它只是通过代码而不是停在我想要的位置.调试器显示没有支票或十字的红点.

编辑 - 我正在运行"本地"运行/调试配置.

这是我的运行/调试配置的屏幕截图.

在此输入图像描述

这是启动/连接的屏幕截图

在此输入图像描述

java intellij-idea maven-3 weblogic12c

12
推荐指数
2
解决办法
2万
查看次数

在Weblogic中部署Spring Boot应用程序

我在webLogic 12C中部署Spring启动应用程序时遇到了麻烦.

10.4.4 403禁止服务器理解请求,但拒绝履行请求.授权无效,请求不应重复.如果请求方法不是HEAD并且服务器希望公开为什么请求没有得到满足,那么它应该描述实体中拒绝的原因.当服务器不希望确切地说明请求被拒绝的原因,或者没有其他响应适用时,通常会使用此状态代码.

我想知道是否有人可以提供帮助.

java spring weblogic12c spring-boot

11
推荐指数
1
解决办法
3万
查看次数

WebLogic 12 SSLKeyException:重新启动后主机名验证失败

我在WebLogic 12.1.2.0.0上部署了一个WAR文件.应用程序通过HTTPS调用Web服务.证书在DemoTrust.jks中导入.所有SSL相关设置都应该是正确的.实际上它可以工作但是在服务器重新启动后它不能工作大约15-20分钟,之后它又开始工作了.在此期间,控制台中会打印以下错误:

<Warning> <Security> <BEA-090504> <Certificate chain received from xxx.xxxxxxxx.xxx.com - 
167.107.80.230 failed hostname verification check. Certificate contained xxx.xxxxxxxx.xxx.com 
but check expected xxx.xxxxxxxx.xxx.com>
Run Code Online (Sandbox Code Playgroud)

警告后我得到:

javax.xml.ws.WebServiceException: javax.net.ssl.SSLKeyException: Hostname verification failed: 
HostnameVerifier=weblogic.security.utils.SSLWLSHostnameVerifier,hostname=xxx.xxxxxxxx.xxx.com.
Run Code Online (Sandbox Code Playgroud)

在上面的警告中,包含的和预期的域是相同的.

谢谢您的帮助!

-E

ssl-certificate weblogic12c

11
推荐指数
3
解决办法
3万
查看次数