2016-09-01 3 views
0

Я пытался подключить весенний ботинок с jboss в течение недели ... Я читал много тем на этом форуме, и многие из них слишком стары. Я получаю ошибку 404 каждый раз, когда я хочу запустить сервер. Не могли бы вы помочь мне настроить мое приложение с jboss правильно?spring boot + jboss = page 403

UPDATE:

Спасибо за помощь с ошибкой 404. Я изменил пакет к "войне". Но теперь, когда я запускаю wildfly-сервер, я получаю ошибку 403 (запрещено). Я смотрел, как это исправить, и все еще остаюсь на том же месте. Это так трудно получить wildfly работу с пружинной ботинке ...

I Обновленные файлы: https://github.com/kuzyn007/LibraryCRUD

pom.xml

<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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>pl.seweryn</groupId> 
    <artifactId>LibraryCRUD</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <!-- Spring: boot starter parent --> 
    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.4.0.RELEASE</version> 
    </parent> 

    <dependencies> 
     <!-- Starter for building web, including RESTful, applications using Spring 
      MVC. Uses Tomcat as the default embedded container --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 
     <!-- Starter for using Spring Data JPA with Hibernate --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-jpa</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.h2database</groupId> 
      <artifactId>h2</artifactId> 
     </dependency> 
     <!-- Starter for testing Spring Boot applications with libraries including 
      JUnit, Hamcrest and Mockito --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 
     <!-- The spring-boot-devtools module can be included in any project to 
      provide additional development-time features. --> 
     <!-- Applications that use spring-boot-devtools will automatically restart 
      whenever files on the classpath change. --> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-devtools</artifactId> 
      <optional>true</optional> 
     </dependency> 

     <!-- JSP Standard Tag Library --> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>jstl</artifactId> 
     </dependency> 

     <dependency> 
      <groupId>org.jboss.spec.javax.servlet.jsp</groupId> 
      <artifactId>jboss-jsp-api_2.2_spec</artifactId> 
      <version>1.0.2.Final</version> 
     </dependency> 

     <!-- … --> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-tomcat</artifactId> 
     <scope>provided</scope> 
    </dependency> 
    <!-- … --> 

    </dependencies> 

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

    <build> 
     <finalName>LibraryCRUD</finalName> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
       <configuration> 
        <fork>true</fork> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

application.properties

# MVC 
spring.view.prefix=/WEB-INF/jsp/ 
spring.view.suffix=.jsp 

# JNDI 
spring.datasource.jndi-name=java:jboss/datasources/library 

# JPA/HIBERNATE 
spring.jpa.hibernate.ddl-auto=create-drop 
spring.jpa.hibernate.naming.physical-strategy=pl.seweryn 
spring.jpa.database=H2 
spring.jpa.show-sql=true 

Application.java

package pl.seweryn.init; 


import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.web.support.SpringBootServletInitializer; 

//@Configuration 
//@EnableAutoConfiguration 
//@ComponentScan 
@SpringBootApplication // same as @Configuration @EnableAutoConfiguration @ComponentScan - alternative 

public class Application extends SpringBootServletInitializer { 

    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
     return application.sources(Application.class); 
    } 

    public static void main(String[] args) throws Exception { 
     SpringApplication.run(Application.class, args); 
    } 

} 
+0

Проект, с которым вы связались, создает файл JAR (по умолчанию для приложений Spring Boot). Вам нужен файл WAR для развертывания в JBoss (или любой другой контейнер сервлетов). Измените тип упаковки в файле POM, повторно упакуйте проект ('mvn clean package'), а затем разверните созданный файл WAR на JBoss. – manish

+0

Благодарим за ответ. После этого теперь у меня есть ошибка 403. Страница еще доцентная загрузка index.jsp :(Я обновил github repo. – kuzyn007

ответ

0

Следуйте этой инструкции: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file

Вы в основном должны упаковать приложение как WAR и реализовать SpringBootServletInitializer.

+0

Спасибо за ответ. После этого теперь у меня ошибка 403. Страница еще доцент load index.jsp :( Я обновил github repo , – kuzyn007

0

Я нашел много ошибок в своем проекте и теперь его работу. Я напишу здесь ответ для своего приложения.

  1. Физическое название было неправильным. Это должно быть: spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl. Или я могу удалить эту строку, и она будет предоставлена ​​по умолчанию из весенней загрузки
  2. У меня есть Application.class в пакете pl.seweryn.init. Я добавил @ComponentScan (pl.seweryn)
  3. BookDaoImpl не был весенним компонентом. Добавлена ​​строка @Component
Смежные вопросы