Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging JCA(资源适配器)日志记录在Weblogic 12.2.1.2上不起作用_Logging_Jakarta Ee_Slf4j_Weblogic12c_Jca - Fatal编程技术网

Logging JCA(资源适配器)日志记录在Weblogic 12.2.1.2上不起作用

Logging JCA(资源适配器)日志记录在Weblogic 12.2.1.2上不起作用,logging,jakarta-ee,slf4j,weblogic12c,jca,Logging,Jakarta Ee,Slf4j,Weblogic12c,Jca,我试图解决一个与从出站资源适配器进行日志记录相关的问题 它在Weblogic 12.2.1.2上运行,并按照以下内容编写 我已经按照设置了日志描述符,当我部署它时,weblogic会在描述符提供的位置创建一个新的空日志文件(如预期的) 我深深地遵循了指南。我尝试了使用java.util.logging,和slf4j的非编录记录器,因此,所有日志消息都会打印到控制台和域日志文件中,但不会打印到我配置的日志文件中 有人能告诉我为什么吗 非常感谢你 不幸的是,我无法让weblogic正常工作,所以我必

我试图解决一个与从出站资源适配器进行日志记录相关的问题

它在Weblogic 12.2.1.2上运行,并按照以下内容编写

我已经按照设置了日志描述符,当我部署它时,weblogic会在描述符提供的位置创建一个新的空日志文件(如预期的)

我深深地遵循了指南。我尝试了使用java.util.logging,和slf4j非编录记录器,因此,所有日志消息都会打印到控制台和域日志文件中,但不会打印到我配置的日志文件中

有人能告诉我为什么吗


非常感谢你

不幸的是,我无法让weblogic正常工作,所以我必须找到一个替代方案

这是我基于的解决方案

pom.xml

<properties>
    <logback.version>1.2.3</logback.version> <!-- Depends on slf4j 1.7.25, conflicting with Weblogic 12.2.1.2 -->
    <slf4j.version>1.7.5</slf4j.version> <!-- Shipped with Weblogic 12.2.1.2 -->

    <adapter.config.file>/etc/logback-my-resource-adapter.xml</adapter.config.file>
</properties>

<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>${logback.version}</version>
    </dependency>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>${logback.version}</version>
    </dependency>
</dependencies>
MyResourceAdapter.java

package it.sisal.betting.sdg.adapter.sogei.logging;

import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.util.ContextInitializer;
import org.slf4j.ILoggerFactory;

    public class LoggerHelper {

        static {
            // https://logback.qos.ch/manual/configuration.html

            System.setProperty(ContextInitializer.CONFIG_FILE_PROPERTY, "${adapter.config.file}");
        }

    public static final ILoggerFactory FACTORY = StaticLoggerBinderHack
        .getSingleton()
        .getLoggerFactory()
    ;

    public static LoggerContext CONTEXT = (LoggerContext)FACTORY;

}
public class MyResourceAdapter implements ResourceAdapter, Serializable {

    private static final Logger logger = LoggerHelper
        .FACTORY
        .getLogger(MyResourceAdapter.class)
    ;

    private BootstrapContext context = null;

    @Override
    public void start(BootstrapContext context) 
        throws ResourceAdapterInternalException 
    {            
        if (logger.isInfoEnabled()) {
            logger.info("start(...)");
        } 

        this.context = context;
     }

     // And so on...
}

为什么在没有有效书面理由的情况下否决投票?!否决票的一些可能原因:[1]您的问题可能属于这类离题问题:。[2] 如果您的问题与从代码登录有关(我不清楚),请显示您的代码。[3] 你的问题太抽象了。你声称你所有的配置都正确,但是你没有显示你的配置,而是链接到网上的文章。所有的信息在我的帖子中都有很好的解释。这绝对是一个与软件相关的问题,但由错误配置或Weblogic的错误引起,因此任何了解此类问题的人都不需要任何代码片段。通常,当我不能胜任这些论点时,我只是不回答这个问题,而是投反对票。注意。如果问题是“由错误配置或Weblogic错误引起的”,那么无论您的问题写得如何,堆栈溢出显然是离题的,因此否决票是合法的。我不同意你的观点,一个错误的配置或者一个bug与一个开发阻塞问题是严格相关的!