Развертывание приложения Spring Boot на Oracle WebLogic Server
1. Цель статьи
В данной статье я покажу вам как развернуть приложение Spring Boot на WebLogic Server. Это Web Server предоставленный с помощью Oracle, бесплатно для скачивания, развития (developing), теста (testing), макетирования (prototyping) и демонстрации (demonstrating) вашего приложения. WebLogic выпущен по лицензии OTN.
Удостоверьтесь, что вы успешно установили WebLogic, если не вы можете посмотреть способ установки WebLogic в статье ниже:
На самом деле, приложение Spring Boot может быть упаковано в выполняемый файл JAR (Executable JAR file). С данным файлом вы можете запустить приложение напрямую без необъодимости развертывания ни на какомWeb Server. Executable JAR file может быть несовместимым со всеми Web Server. Поэтому если вы хотите развернуть на определенном Web Server, то вам нужно упаковать приложение Spring Boot в файл WAR.
2. Sửa đổi code
Здесь у меня имеется проект Spring Boot, разработанный с помощью Eclipse IDE. При создании проекта Spring Boot у вас есть 2 выбора для упаковки данного проекта это WAR или JAR.
Когда вы создаете проект Spring Boot с опцией "Packaging = War", Eclipse создает для вас 2 класс это "AbcApplication & ServletInitializer". Файлы WAR подходящие для развертывания (deploy) на Web Server.
При это если вы создаете проект Spring Boot с опцией "Packaging = Jar", будет создан только один класс AbcApplication. Приложение Spring Boot при упаковке в файл JAR, может выполняться (Executabe) независимо, без необходимости развертывания на каком-либо Web Server. Но файл JAR не подходит для развертывания на Web Server.
WAR File.
Если у вас есть готовый проект Spring Boot, вам нужно изменить метод упаковки (Packaging) на WAR:
На Eclipse открыть файл pom.xml, и измените метод упаковки (packaging) на war.
Если ваш проект не имеет класс ServletInitializer, создайте его.
ServletInitializer.java
package org.o7planning.example;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(SpringBootWebLogicApplication.class);
}
}
Добавить следующую сниппет конфигурацию в pom.xml:
** pom.xml **
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
Если имеется больше чем 1 класс Application в вашем проекте, скажите Spring Boot какой класс будет использоваться для вашего приложения.
** pom.xml **
<properties>
<start-class>org.o7planning.example.OtherSpringBootWebApplication</start-class>
</properties>
weblogic.xml & dispatcherServlet-servlet.xml
Создать 2 файла weblogic.xml & dispatcherServlet-servlet.xml в папке src/main/webapp/WEB-INF. Заметьте, если данная папка не существует, создайте ее.
Ваше приложение при развертывании на WebLogic будет иметь "context-root = /myweb", вы можете его изменить с помощью конфигурации в файле weblogic.xml:
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app
xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app
http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
<wls:context-root>/myweb</wls:context-root>
<wls:container-descriptor>
<wls:prefer-application-packages>
<wls:package-name>org.slf4j.*</wls:package-name>
<wls:package-name>org.springframework.*</wls:package-name>
</wls:prefer-application-packages>
</wls:container-descriptor>
</wls:weblogic-web-app>
dispatcherServlet-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
</beans>
3. Install Spring Boot
В следующем шаге, вам нужно использовать Maven чтобы создать файл WAR. Вам нужно удостовериться ваш Eclipse использует JDK вместо JRE. Если нет, произойдет ошибка в данном процессе.
Нажмите на правую кнопку мыши на Project и выберите:
- Run As/Maven Install
Теперь вы получите файл WAR расположенный в папке target проекта, вы можете использовать данный файл для развертывания на Tomcat Server.
4. Развернуть на WebLogic
После упаковки приложения в файл WAR, вы можете развернуть данный файл на WebLogic:
Есть 2 подхода для развертывания приложения на WebLogic Server.
- Копировать файл WAR расположить в определенную папку сервер, потом развернуть данный файл на WebLogic. Если хотите переразвернуть приложение, вам нужно только скопировать новый файл WAR перезаписать старый файл и объявить WebLogic обновить приложение.
- Использовать функцию Upload для развертывания файла WAR.
OK, здесь я скопировал файл WAR и расположил его в папке на сервере.
Нажмите на "Activate Changes" для активации изменений.
Теперь ваше приложение имеет статус "Prepared" (Подготовленный), оно еще не активировано для работы.
Test
5. Отмена развертывания (Undeploy)
Чтобы отменить развертывание (Undeploy) приложения на WebLogic, вам нужно выполнить 2 шага.
- Остановить (Stop) приложение.
- Удалить приложение из WebLogic.
6. Обновить развертывание
Если ваше приложение обновлено, переупекуйте приложение и получится новый файл WAR. Чтобы развернуть приложение у вас есть 2 способа, чтобы сделать это:
- Отмена развертывания (Undeploy) приложения и переразвернуть (Redeploy).
- Скопировать новый файл WAR и перезписать старый файл WAR, и объявить WebLogic переобновить приложение (Или перезагрузить WebLogic). Примечание: Данный способ применяется только когда ваше приложение развернуто напрямую из файла WAR, расположенный на сервере.
В предыдущем шаге я развернул приложение напрямую с файла WAR расположеный в папке сервера. Теперь я скопирую новый файл, чтобы перезаписать старый.
И обновить (Update) приложение:
Pуководства Java Application Servers
- Установите Tomcat Server для Eclipse
- Установить Tomcat Server
- Установите Glassfish Web Server в Windows
- Установить Oracle WebLogic Server
- Как создать WindowsService для Oracle WebLogic Server?
- Разверните приложение Spring Boot на Tomcat Server
- Развертывание приложения Spring Boot на Oracle WebLogic Server
- Развертывание Spring MVC на сервере Oracle WebLogic Server
- Установить сертификат SSL для сервера Tomcat
- Установите бесплатный SSL-сертификат Let's Encrypt для Tomcat Server в Ubuntu
Show More
Руководства Spring Boot
- Установите Spring Tool Suite для Eclipse
- Руководство Spring для начинающих
- Руководство Spring Boot для начинающих
- Общие свойства Spring Boot
- Руководство Spring Boot и Thymeleaf
- Руководство Spring Boot и FreeMarker
- Руководство Spring Boot и Groovy
- Руководство Spring Boot и Mustache
- Руководство Spring Boot и JSP
- Руководство Spring Boot, Apache Tiles, JSP
- Используйте Logging в Spring Boot
- Мониторинг приложений с помощью Spring Boot Actuator
- Создание веб-приложения с несколькими языками с помощью Spring Boot
- Используйте несколько ViewResolver в Spring Boot
- Используйте Twitter Bootstrap в Spring Boot
- Руководство Spring Boot Interceptor
- Руководство Spring Boot, Spring JDBC и Spring Transaction
- Руководство Spring JDBC
- Руководство Spring Boot, JPA и Spring Transaction
- Руководство Spring Boot и Spring Data JPA
- Руководство Spring Boot, Hibernate и Spring Transaction
- Интеграция Spring Boot, JPA и H2 Database
- Руководство Spring Boot и MongoDB
- Используйте несколько DataSources с Spring Boot и JPA
- Используйте несколько DataSource с Spring Boot и RoutingDataSource
- Создайте приложение для входа с Spring Boot, Spring Security, Spring JDBC
- Создайте приложение для входа с Spring Boot, Spring Security, JPA
- Создайте приложение регистрации пользователей с помощью Spring Boot, Spring Form Validation
- Пример OAuth2 Social Login в Spring Boot.
- Запускать фоновые запланированные задачи в Spring
- Пример CRUD Restful Web Service c Spring Boot
- Пример Spring Boot Restful Client c RestTemplate
- Пример CRUD с Spring Boot, REST и AngularJS
- Защита Spring Boot RESTful Service используя Basic Authentication
- Защита Spring Boot RESTful Service используя Auth0 JWT
- Пример Upload file c Spring Boot
- Пример Download file c Spring Boot
- Пример Upload file c Spring Boot и jQuery Ajax
- Пример Upload file c Spring Boot и AngularJS
- Создание веб-приложения для корзины покупок с помощью Spring Boot, Hibernate
- Руководство Spring Email
- Создайте простое приложение Chat с Spring Boot и Websocket
- Разверните приложение Spring Boot на Tomcat Server
- Развертывание приложения Spring Boot на Oracle WebLogic Server
- Установите бесплатный сертификат Let's Encrypt SSL для Spring Boot
- Настройте Spring Boot для перенаправления HTTP на HTTPS
Show More