【问题标题】:SIP Servlet not starting in JBOSS 7.2 from EclipseSIP Servlet 未在 Eclipse 的 JBOSS 7.2 中启动
【发布时间】:2015-09-17 03:20:22
【问题描述】:

我目前从事一个基于 Mobicents SIP Servlets 和 JBoss 7.2 的项目。我使用 Mobicents Eclipse 插件给我的模板在 Eclipse 中创建了一个新的动态 Web 项目,然后对其进行 mavenize。然后我在 Eclipse 中创建了一个指向我的 Mobicents Jboss 安装的 JBoss 服务器。当我现在部署我的 servlet 时,我在 Jboss 安装中看到了爆炸式的战争,日志说它已部署,但我没有看到它记录任何内容。

我非常基本的 servlet:

package org.example.servlet.sip;

import javax.servlet.ServletException;
import javax.servlet.sip.SipServlet;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

@SuppressWarnings("serial")
public class MySipServlet extends SipServlet {

    private static Log logger = LogFactory.getLog(MySipServlet.class);

    @Override
    public void init() throws ServletException {
        logger.info("the HelloSipWorld servlet has been started");      
    }

}

日志:

12:54:12,102 INFO  [org.jboss.modules] (main) JBoss Modules version 1.2.0.CR1
12:54:12,315 INFO  [org.jboss.msc] (main) JBoss MSC version 1.0.4.GA
12:54:12,378 INFO  [org.jboss.as] (MSC service thread 1-6) JBAS015899: JBoss AS 7.2.0.Final "Janus" starting
12:54:13,392 INFO  [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found test-as.war in deployment directory. To trigger deployment create a file called test-as.war.dodeploy
12:54:13,426 INFO  [org.xnio] (MSC service thread 1-5) XNIO Version 3.0.7.GA
12:54:13,430 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
12:54:13,435 INFO  [org.xnio.nio] (MSC service thread 1-5) XNIO NIO Implementation Version 3.0.7.GA
12:54:13,453 INFO  [org.jboss.remoting] (MSC service thread 1-5) JBoss Remoting version 3.2.14.GA
12:54:13,533 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 37) JBAS011800: Activating Naming Subsystem
12:54:13,546 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 29) JBAS010280: Activating Infinispan subsystem.
12:54:13,570 INFO  [org.jboss.as.jsf] (ServerService Thread Pool -- 35) JBAS012605: Activated the following JSF Implementations: [main, 1.2]
12:54:13,575 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 42) JBAS013171: Activating Security Subsystem
12:54:13,619 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 46) JBAS015537: Activating WebServices Extension
12:54:13,635 INFO  [org.jboss.as.security] (MSC service thread 1-3) JBAS013170: Current PicketBox version=4.0.15.Final
12:54:13,677 INFO  [org.jboss.as.connector.logging] (MSC service thread 1-2) JBAS010408: Starting JCA Subsystem (JBoss IronJacamar 1.0.15.Final)
12:54:13,686 INFO  [org.jboss.as.naming] (MSC service thread 1-6) JBAS011802: Starting Naming Service
12:54:13,691 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-8) JBAS015400: Bound mail session [java:jboss/mail/Default]
12:54:13,777 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 25) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
12:54:13,958 INFO  [org.jboss.ws.common.management] (MSC service thread 1-6) JBWS022052: Starting JBoss Web Services - Stack CXF Server 4.1.3.Final
12:54:14,080 INFO  [org.apache.coyote.http11] (MSC service thread 1-6) JBWEB003001: Coyote HTTP/1.1 initializing on : http-localhost/127.0.0.1:8080
12:54:14,093 INFO  [org.apache.coyote.http11] (MSC service thread 1-6) JBWEB003000: Coyote HTTP/1.1 starting on: http-localhost/127.0.0.1:8080
12:54:14,357 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-1) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
12:54:14,467 INFO  [org.jboss.as.remoting] (MSC service thread 1-5) JBAS017100: Listening on 127.0.0.1:4447
12:54:14,469 INFO  [org.jboss.as.remoting] (MSC service thread 1-3) JBAS017100: Listening on 127.0.0.1:9999
12:54:14,472 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-4) JBAS015012: Started FileSystemDeploymentService for directory /home/jck/Desktop/ngncc/as/mobicents/mss-2.1.547-jboss-as-7.2.0.Final/standalone/deployments
12:54:14,507 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-8) JBAS015876: Starting deployment of "media-jsr309-servlet.war" (runtime-name: "media-jsr309-servlet.war")
12:54:14,508 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015876: Starting deployment of "test-as.war" (runtime-name: "test-as.war")
12:54:14,509 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015876: Starting deployment of "click2call.war" (runtime-name: "click2call.war")
12:54:14,507 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015876: Starting deployment of "jolokia.war" (runtime-name: "jolokia.war")
12:54:14,525 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015876: Starting deployment of "sip-servlets-management.war" (runtime-name: "sip-servlets-management.war")
12:54:14,528 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015876: Starting deployment of "websockets-sip-servlet.war" (runtime-name: "websockets-sip-servlet.war")
12:54:15,139 INFO  [org.jboss.web] (ServerService Thread Pool -- 51) JBAS018210: Register web context: /test-as
12:54:15,140 INFO  [org.jboss.web] (ServerService Thread Pool -- 53) JBAS018210: Register web context: /websockets-sip-servlet
12:54:15,143 INFO  [org.jboss.web] (ServerService Thread Pool -- 50) JBAS018210: Register web context: /jolokia
12:54:15,145 INFO  [org.jboss.web] (ServerService Thread Pool -- 52) JBAS018210: Register web context: /sip-servlets-management
12:54:15,373 INFO  [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/jolokia]] (ServerService Thread Pool -- 50) jolokia-agent: No access restrictor found at classpath:/jolokia-access.xml, access to all MBeans is allowed
12:54:15,754 INFO  [org.jboss.web] (ServerService Thread Pool -- 50) JBAS018210: Register web context: /media-jsr309-servlet
12:54:16,014 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "sip-servlets-management.war" (runtime-name : "sip-servlets-management.war")
12:54:16,015 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "test-as.war" (runtime-name : "test-as.war")
12:54:16,016 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "jolokia.war" (runtime-name : "jolokia.war")
12:54:16,016 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "websockets-sip-servlet.war" (runtime-name : "websockets-sip-servlet.war")
12:54:16,016 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "click2call.war" (runtime-name : "click2call.war")
12:54:16,017 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 26) JBAS018559: Deployed "media-jsr309-servlet.war" (runtime-name : "media-jsr309-servlet.war")
12:54:16,018 INFO  [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status report
JBAS014775:    New missing/unsatisfied dependencies:
      service jboss.security.security-domain.sip-servlets (missing) dependents: [service jboss.web.deployment.default-host./click2call.realm] 

12:54:16,118 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
12:54:16,119 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
12:54:16,119 ERROR [org.jboss.as] (Controller Boot Thread) JBAS015875: JBoss AS 7.2.0.Final "Janus" started (with errors) in 4413ms - Started 368 of 443 services (3 services failed or missing dependencies, 71 services are passive or on-demand)

非常感谢任何关于我做错了什么的提示。我在 JBoss 7.2 上使用 SIP Servlets 2.1.547。

【问题讨论】:

    标签: eclipse servlets jboss mobicents mobicents-sip-servlets


    【解决方案1】:

    确保在配置中选择standalone-sip.xml 作为配置文件。 SIP Servlets Container 使用特定配置,我相信当您通过 Eclipse 启动时,这不是默认配置

    【讨论】:

    • 我把服务器的RuntimeConfiguration改成-mp "/home/jck/Desktop/ngncc/as/mobicents/mss-2.1.547-jboss-as-7.2.0.Final/modules" -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone -b localhost --server-config=standalone-sip.xml -Djboss.server.base.dir=/home/jck/Desktop/ngncc/as/ mobicents/mss-2.1.547-jboss-as-7.2.0.Final/standalone ,但我仍然得到相同的结果
    • 我删除了与 Eclipse 和 mobicents 相关的所有内容,然后完全从头开始。在新建服务器实例时,发现在创建过程中可以选择standalone-sip.xml。我上次错过了。现在它就像一个魅力。
    【解决方案2】:

    使用 @SipServlet 注释您的 servlet:

    @SuppressWarnings("serial")
    @javax.servlet.sip.annotation.SipServlet
    public class MySipServlet extends SipServlet {
    

    添加 sip 依赖项,例如:

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>sip-api</artifactId>
        <version>1.0</version>
    </dependency>
    

    确保 Maven 依赖项存在于 WEB-INF/lib 中。如果没有,请转到 你的项目>属性>部署程序集>单击添加..并选择“构建路径条目”,然后选择“Maven依赖项”。

    您的日志中也有错误,因此您肯定缺少一些依赖项:

    JBAS014775:    New missing/unsatisfied dependencies:
          service jboss.security.security-domain.sip-servlets (missing) dependents: [service jboss.web.deployment.default-host./click2call.realm] 
    

    【讨论】:

    • 我从 JBoss 中删除了 click2call(默认情况下,我与它无关)。依赖关系都满足了,一切都构建得很干净,所以这也不是原因。
    • @SipServlet 怎么样
    • 这也没有改变。
    【解决方案3】:
    1. 你是否在\server\default\conf\jboss-log4j.xml中添加了以下类别

      <category name="org.example.servlet">
        <priority value="INFO"/></category> 
      
    2. 如果您不打算测试 click2call 用例,为什么不从 jboss 的部署文件夹中删除战争。

    【讨论】:

    • 我删除了 click2call(它默认出现,在重新安装了一些 JBoss 之后,我不再打扰了)。我没有在我的安装中找到“jboss-log4j.xml”。
    • 我使用过 JBoss 5 并使用 jboss-log4j.xml 来自定义日志记录。我认为在 Joss 7 中,您可以通过standalone.xml 进行控制请查看并添加以下内容: ... ...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    • 1970-01-01
    • 1970-01-01
    • 2017-05-30
    • 2010-09-22
    • 2020-08-12
    相关资源
    最近更新 更多