Развертывание war weblogic 10.3.6.0

Я разработал и протестировал приложение REST WS. Среда разработчика была Tomcat 8, и у меня не было с ней проблем. Во время развертывания войны в weblogic 10.3.6.0 я упаковал его в год и попытался установить, но появилась следующая ошибка:

enter image description here

165c267237d:-8000-0000000000000d08> <1536566494204> <BEA-101371> <There was a failure when processing annotations for application /home/osm/Oracle/Middleware/user_projects/domains/XXX/servers/Serve
r/tmp/_WL_user/Mock_Core/55tjfs/com.XXX-web-module-1.5.war. Please make sure that the annotations are valid. The error is String index out of range: 36611>

код weblogic-application.xml

<!DOCTYPE application PUBLIC "-//Sun Microsystems,
Inc.//DTD J2EE Application 1.2//EN"
        "http://java.sun.com/j2ee/dtds/application_1_2.dtd">
<application xmlns="http://java.sun.com/xml/ns/javaee"
             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/application_6.xsd"
             version="6">
    <display-name>Core_MockSystem</display-name>
    <module>
        <web>
            <web-uri>com.XXX.core-web-module-1.5.war</web-uri>
            <context-root>/CoreWS</context-root>
        </web>
    </module>
</application>

код web.xml

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         id="WebApp_ID" version="2.5">
    <servlet>
        <servlet-name>RestServiceOrderReporter</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>RestServiceOrderReporter</servlet-name>
        <url-pattern>/coreWS</url-pattern>
    </servlet-mapping>

</web-app>

REST класс

package com.XXX.core.rest;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;


import javax.ws.rs.Produces;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.MediaType;
import java.sql.*;

@RestController
@ApplicationPath("coreWS")
public class RestServiceOrderReporter {

    private Connection conn = null;
    private Statement statement = null;
    private ResultSet resultSet = null;


    public RestServiceOrderReporter(){

        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try {
            this.conn = XXX;
        } catch (SQLException e) {
            e.printStackTrace();
        }

        try {
            this.statement = conn.createStatement();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    @Produces({MediaType.APPLICATION_JSON})
    @RequestMapping("/isOrderTerminated")
    public String orderTerminationReport(@RequestParam(value="orderID", defaultValue="orderID") String orderID) {
        XXX
    }

    @Produces({MediaType.APPLICATION_JSON})
    @RequestMapping("/isInAULL")
    public String orderAULL(@RequestParam(value="orderID", defaultValue="orderID") String orderID) {
        XXX
    }

    @Produces({MediaType.APPLICATION_JSON})
    @RequestMapping("/isInTOA")
    public String orderTOA(@RequestParam(value="orderID", defaultValue="orderID") String orderID) {XXX
    }

    @Produces({MediaType.APPLICATION_JSON})
    @RequestMapping("/isInAsyncHPSA")
    public String orderAsyncHPSA(@RequestParam(value="orderID", defaultValue="orderID") String orderID) {
      XXX
    }

    private String setResultOrderCompleted(String orderID) {
        XXX
        return "false";
    }

    private String getTESAStage(String orderID) {
        XX
        }


    private String getTOAStage(String orderID) {
       XXX
    }

    private String getHPSAStage(String orderID) {
       XXX
    }
}

Если я разверну .war непосредственно в weblogic, произойдет та же ошибка. Более описательной ошибки в логах найти не удалось. Может быть, эта проблема связана с ошибкой WL 10.3.6?

Я пробовал также в WL 12C, и у меня возникла проблема с API-интерфейсом jersey: Сервлет: «JAX-RS / Jersey # 1» не удалось предварительно загрузить при запуске в веб-приложении: «com.XXX-web-module-1.5» .

Andoni Da Silva 10.09.2018 15:35
0
1
644
1

Ответы 1

Weblogic-application.xml - это специфичный для сервера дескриптор развертывания, который расширяет дескриптор развертывания application.xml.

Для обработки любых тегов, специфичных для веб-логики, вам понадобится что-то вроде:

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="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.3/weblogic-application.xsd">

.....

</weblogic-application> 

Этот файл будет находиться в том же месте, что и ваш application.xml ..

Другие вопросы по теме