Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > запуск спринг приложения на сервере


Автор: 4eJIoBekMoJIekyJIa 23.9.2008, 15:16
Всем привет, хочу написать веб-приложение с помощью eclipse и spring MVC на сервере tomcat. Поставил на eclipse plugin Spring IDE и WTP(Web Tools Platform) написал простейший спринг проект, с одной страничкой homepage, но не знаю как это все скомпилировать на сервере.

HomePageController.java
Код

package springTest.controllers;

import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;


public class HomePageController extends AbstractController {
    public HomePageController() {}
    protected ModelAndView handleRequestInternal(HttpServletRequest request,
                                                 HttpServletResponse response)
    throws Exception {
        return new ModelAndView("homePage.jsp");
    }

}


web.xml
Код

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 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">
  <display-name>SpringTest</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
    <servlet-name>SpringTest</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>SpringTest</servlet-name>
    <url-pattern>*.htm</url-pattern>
  </servlet-mapping>
  
</web-app>


springTest-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-2.5.xsd">

  <bean name="/homePage.htm" class="springTest.controllers.HomePageController"/>

</beans>


homePage.jsp
Код

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jstl/xml" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jstl/sql" prefix="sql" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>

    <title> </title>
        HI!!
    </head>
    <body>
        
    </body>
</html>


ЗЫ: Если спрашиваю какую-то глупость не пинайте я только учусь)

Автор: Hroft 23.9.2008, 15:57
В эклипсе должна быть тулза для генерации WAR-архива, им не пользуюсь, сказать точно не могу.
Этот архив через веб-интерфейст томката можно задеплоить на сервер.
А можно и руками, как должен выглядеть проект - тут:
http://tomcat.apache.org/tomcat-5.5-doc/appdev/deployment.html
.
Все это должно лежать в подкаталоге каталога webapps томката.

Автор: vicod 23.9.2008, 16:21
попробуй повторить http://static.springframework.org/docs/Spring-MVC-step-by-step/part1.html

Автор: 4eJIoBekMoJIekyJIa 23.9.2008, 17:42
Цитата(vicod @  23.9.2008,  16:21 Найти цитируемый пост)
попробуй повторить это 

как я понял билдфайл нужен для генерации вар архива?
Не мог бы ты пояснить что тут написано?
Код

    <property name="test.dir" value="test"/>
        
    <target name="buildtests" description="Compile test tree java files">
        <mkdir dir="${build.dir}"/>
        <javac destdir="${build.dir}" source="1.5" target="1.5" debug="true"
            deprecation="false" optimize="false" failonerror="true">
            <src path="${test.dir}"/>
            <classpath refid="master-classpath"/>
        </javac>
    </target>
    
    <target name="tests" depends="build, buildtests" description="Run tests">
        <junit printsummary="on"
            fork="false"
            haltonfailure="false"
            failureproperty="tests.failed"
            showoutput="true">
            <classpath refid="master-classpath"/>
            <formatter type="brief" usefile="false"/>
            
            <batchtest>
                <fileset dir="${build.dir}">
                    <include name="**/*Tests.*"/>
                </fileset>
            </batchtest>
            
        </junit>
        
        <fail if="tests.failed">
            tests.failed=${tests.failed}
            ***********************************************************
            ***********************************************************
            ****  One or more tests failed!  Check the output ...  ****
            ***********************************************************
            ***********************************************************
        </fail>
    </target>


Автор: vicod 24.9.2008, 10:02
в билдфайле может быть много чего. почитай про утилиту для сборки http://ant.apache.org/. для чего она нужна и т.д.
тот фрагмент что ты привёл нужен для того чтобы гонять http://www.junit.org/ тесты, про них дальше должны были походу писать. если не пишешь тесты, то он, естественно, не нужен.

Автор: 4eJIoBekMoJIekyJIa 25.9.2008, 15:41
vicod, сделал все как в том гайде, все сбилдилось, он прада када делаю релоад пишет java.net.SocketException: Connection reset, в папке томкета появился мой springApp но в броузере ничего не отбражается((
Почему такое может быть?

Автор: vicod 25.9.2008, 17:03
Цитата(4eJIoBekMoJIekyJIa @ 25.9.2008,  15:41)
vicod, сделал все как в том гайде, все сбилдилось, он прада када делаю релоад пишет java.net.SocketException: Connection reset, в папке томкета появился мой springApp но в броузере ничего не отбражается((
Почему такое может быть?

мне трудно судить в чём проблема по такой скудной информации smile 
ты юзера мэнэджера создавал?
или попробуй просто задеплоить приложение, потом зайти в мэнэджер в томкате и запустить с него твоё приложение вручную.

Автор: 4eJIoBekMoJIekyJIa 25.9.2008, 17:33
Цитата(vicod @  25.9.2008,  17:03 Найти цитируемый пост)
ты юзера мэнэджера создавал?

я вроде создавал юзера томката, который в Tomcat 6.0\conf\tomcat-users.xml, у него roles=admin,manager, это то?

Цитата(vicod @  25.9.2008,  17:03 Найти цитируемый пост)
или попробуй просто задеплоить приложение, потом зайти в мэнэджер в томкате и запустить с него твоё приложение вручную. 

а как зайти в мэнэджер? и как потом запустить вручную?

Автор: vicod 25.9.2008, 19:09
есть же http://tomcat.apache.org/tomcat-5.5-doc/manager-howto.html
пробуй у себя локально что-то типа http://localhost:8080/manager/html/

Добавлено через 1 минуту и 14 секунд
а вообще хз что у тебя там, выложи может исходник, если не получится

Автор: 4eJIoBekMoJIekyJIa 26.9.2008, 13:41
vicod, Спасибо разобрался.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)