使用 JSF (AWS) 的 Springboot Whitelabel 错误页面

2024-01-18

我有一个旧的(继承的)项目,需要在 AWS 上部署,但遇到一些与模板文件夹相关的问题。

这个项目在“src\main\webapp”而不是“src\main\resources\templates”上有一个index.xhtml,我认为这是因为它使用jsf,但我是Springboot和jsf页面的新手。

在我得到的文档中,它说为了打开网络,您需要访问http://localhost:5000/index.jsf http://localhost:5000/index.jsf所以为了解决这个问题我做了一个课程

@Controller
public class IndexController {

    @RequestMapping(value = {"", "/"})
    public String index() {
        return "redirect:/index.jsf";
    }
}

在本地工作中,但我遇到的问题是,当我使用 Elastic Beanstalk 将其部署在 AWS 上时,我在其上创建一个新的 Java 应用程序来上传使用 maven 制作的 jar 文件。

但当我进入应用程序时,我总是收到以下消息:

白标错误页面

此应用程序没有 /error 的显式映射,因此您将其视为后备。

世界标准时间 2020 年 6 月 18 日星期四 14:52:25 出现意外错误(类型=未找到,状态=404)。

/index.jsp

我试着:

  1. 搜索配置自定义文件夹的位置,但没有找到。
  2. 将index.xhtml 文件移至模板但不起作用。
  3. Add to 应用程序属性 file spring.thymeleaf.prefix=类路径:/templates/设置默认文件夹。
  4. 我在 Elastic Beanstalk 上创建了一个 Tomcat 应用程序,而不是 Java 应用程序,并上传了一个用 maven 制作的 war 文件,但我得到了 tomcat 404。

该项目在 swagger-ui 上有一个页面来测试 API Rest 请愿,我不知道它是否会导致一些问题。

POM.XML

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>es.xxxxxxx</groupId>
    <artifactId>xxxxxxxxxx</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>xxxxxxxxxx</name>
    <description>xxxxxxxxxxxxxxxxxxxxxxx</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.6.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.7</java.version>
    </properties>

    <dependencies>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <scope>compile</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <scope>compile</scope>
        </dependency>



        <!-- JSF -->

        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-core</artifactId>
            <scope>compile</scope>
        </dependency>

        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.2.8-02</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.2.8-02</version>
            <scope>compile</scope>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>

        <dependency>
            <groupId>org.primefaces</groupId>
            <artifactId>primefaces</artifactId>
            <version>5.3</version>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-logging-juli</artifactId>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
            <scope>compile</scope>
        </dependency>

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.0.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-joda</artifactId>
            <version>${jackson.version}</version>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-hppc</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-json-org</artifactId>
            <version>${jackson.version}</version>
        </dependency>

        <dependency>
            <groupId>org.primefaces.themes</groupId>
            <artifactId>all-themes</artifactId>
            <version>1.0.10</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>prime-repo</id>
            <name>PrimeFaces Maven Repository</name>
            <url>http://repository.primefaces.org</url>
            <layout>default</layout>
        </repository>
    </repositories>
</project>

应用程序属性

server.port = 5000

更多信息: 我注意到 WEB-INF 文件夹丢失了,所以我创建了它(还有 class 和 lib 文件夹)并添加了这些文件。

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" version="3.1">
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <listener>
        <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
    </listener>
</web-app>

面孔配置.xml

<?xml version="1.0" encoding="UTF-8"?>
<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
              version="2.2">
    <application>
        <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
    </application>
</faces-config>

另外我添加了这一行pom.xml

<outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>

但问题仍然存在。


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 JSF (AWS) 的 Springboot Whitelabel 错误页面 的相关文章

随机推荐

  • ImageMagick 和 Java Runtime Exec 的问题

    我有一个奇怪的问题 我认识的 java 专家都无法解决 我需要在我的应用程序上使用 imagemagick 将我网站上的电子邮件转换为图像 这样就没有锅可以轻松地获取电子邮件 使用 image magick 命令行解决了问题 如下所示转换
  • 为什么 std::initializer_list 会复制项目?

    我一直以为std initializer list是一个轻量级代理对象 它只会从列表项中获取 const 引用 而不是复制它们 但后来我发现在这种情况下实际上执行了复制 struct Test Test std cout lt lt thi
  • 使用 Vue Js 和 Vue Cli 构建 Chrome 扩展

    我目前正在构建一个 Chrome 扩展程序vuejs https vuejs org 供电前端 使用这个效果非常好vuecli https cli vuejs org 直到应用程序开始使用Webextension API 普通网站无法访问此
  • PyQt5 无法导入 QtGui

    我刚刚从 PyQt4 迁移到 5 并且 QtGui 遇到问题 我使用 32 位 Windows 安装程序安装 而不是我自己的版本 当我做 from PyQt5 import QtGui I get class MainWindow QtGu
  • Feign 客户端中不支持 Spring Data Pageable 作为 RequestParam

    我一直在尝试为我的其余 api 公开一个 Feign Client 它采用 Pageable 作为输入并定义了 PageDefaults 控制器 GetMapping value data produces MediaType APPLIC
  • 从 Eclipse 连接到 MySQL (CDT)

    我尝试使用 Eclipse 中的 C 连接到 MySQL 数据库 并参考了互联网上的所有建议 但没有一个是完全有帮助的 我正在使用 Eclipse 和 MinGW 连接到 MySQL 我添加了 C Program Files boost C
  • htaccess 重写传递两个变量或一个取决于两者是否可用?

    我想将第一个目录作为变量传递 将子目录作为另一个变量传递 它适用于具有两个目录 something something2 的 url 但当我尝试仅使用一个目录 something 时 我收到错误 404 RewriteRule posts
  • 在浏览器中渲染 docx 文件

    我正在使用 docx4j 将 microsoft word 文档转换为 pdf 然后在浏览器中显示它http www docx4java org trac docx4j http www docx4java org trac docx4j它
  • 在 Python Pandas 中训练朴素贝叶斯的不同类型的特征

    我想使用许多特征来训练朴素贝叶斯分类器来对 A 或 非 A 进行分类 我有三个不同值类型的特征 1 total length 正整数 2 元音比率 以小数 分数表示 3 twoLetters lastName 包含多个两个字母字符串的数组
  • 是否可以在 Perl 中使用 SSH 私钥对我的数据进行签名? [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我是 Perl 新手 所以这可能是非常基本的 但我找不到解决这个问题的方法 我正在尝试签署我的数据 该数据必须使用我的通
  • Eclipse CDT - 链接到 Windows lib 文件的问题

    使用 gcc 编译时出现以下链接器错误 undefined reference to SetStretchBltMode 8 undefined reference to StretchDIBits 52 undefined referen
  • 使用 Serialized 通过 Intent 传递数据

    我已经用可序列化实现了我的类 但它仍然不起作用 这是我的课 package com ursabyte thumbnail import java io Serializable import android graphics Bitmap
  • 一台服务器上的网站出现 IE11 文档模式 7 问题,但另一台服务器上则不然

    On IE 11 当我们浏览部署在Windows Server 2012 notR2 网站正确显示首页 如下图1 但如果完全相同的网站部署在另一台服务器上windows Sever 2012 R2 在IE11上浏览 显示完全乱七八糟 如下图
  • 如何从字节播放mp3?

    有没有办法直接使用python从字节播放mp3 如果没有 我可以将二进制文件转换为不同的音频格式并使二进制文件可播放吗 编辑 以下代码适用于wav文件但不是mp3 from pygame import mixer time mixer pr
  • Spring Boot 应用程序一天后冻结

    我有一个 Spring Boot 应用程序在两台服务器上运行 它接受文件上传请求 约 1 KB 通过来自 1000 个物联网设备的控制器 另外还有一个TCP监听器它还接受来自这些物联网设备的 GPS 数据作为流 我已将一台服务器上的 Tom
  • Hibernate 或 JPA 中的游标或记录集迭代器之类的东西?

    有什么方法可以在 Hibernate 中处理长查询结果吗 如果我想绘制包含数百万条记录的表格并允许用户在其上导航怎么办 目标不是将所有数据传输到客户端并处理当前位置 您可以尝试使用 Hibernate可滚动结果 http docs jbos
  • “元素丢失..”尝试使用 生成类

    使用 VS 2013 附带的 XSD 工具 我收到以下消息 尝试从包含以下内容的 xsd 生成类
  • 带溢出的 DIV:auto 和 100% 宽的表

    我希望有人能够在这里帮助我 我已尽力简化我的示例 我有一个绝对定位的 DIV 在本例中我已将其填充到浏览器窗口中 该div具有overflow auto属性 可以在内容太大而无法显示DIV时提供滚动条 在 DIV 中 我有一个表格来显示一些
  • Xcode 给出 Apple Mach-O 链接器错误

    我刚刚编译了一个项目 Xcode 返回了这两个错误 这似乎不是我的代码的错误 我该如何修复它们 Undefined symbols for architecture i386 vImageBoxConvolve ARGB8888 refer
  • 使用 JSF (AWS) 的 Springboot Whitelabel 错误页面

    我有一个旧的 继承的 项目 需要在 AWS 上部署 但遇到一些与模板文件夹相关的问题 这个项目在 src main webapp 而不是 src main resources templates 上有一个index xhtml 我认为这是因