Kontroler springa obsługujący href

0

Pierwszy projekt Spring w netbeansie.
Index.jsp wygenerowany przez netbeansa uruchamia mi się automatycznie jako index.htm
Jeżeli wstawię w nim kod

<a href="innaStrona.jsp">inna strona</a>

to chociaż strona jest, dostaję 404
To samo dla

<a href="innaStrona.jsp">inna strona</a>

.
Wiem, że muszę ustawić jakiś kontroler który pozwoli na przeniesienie się z jednej strony do drugiej.

Jak ustawić taki kontroler?

0

Wszystkie nowoczesne frameworki pozwalają ustawić sobie zasady nawigacji w taki sposób że nie przeskakujesz bezpośrednio pomiędzy plikami, tylko pewne ciągi znaków w adresie są mapowane na odpowiednie pliki.

0

Tak, wiem, że żądanie ma iść do kontrolera i stamtąd dopiero do innego pliku.

Do Source Packages/com.mycompany/blabla dodałem klasę:

public class RegistrationController extends AbstractController {
    
    public RegistrationController() {
    }
    
    protected ModelAndView handleRequestInternal(
            HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        ModelAndView model = new ModelAndView("registration");
//        throw new UnsupportedOperationException("Not yet implemented");
        return model;
    }
}

Do pliku dispatcher-servlet.xml dodałem:

    <bean class="com.mycompany.blabla.RegistrationController" />

Do katalogu Web Pages/WEB-INF/jsp dodałem plik registration.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Hello World!</h1>
    </body>
</html>

Nie wiem dla czego, ale nie mogę nawet tego sprawdzić, bo o ile wcześniej po uruchomieniu projektu otwierała mi się strona w firefoxie, to teraz nie chce się uruchomić.
Dostaję tylko taki komunikat:

NetBeans: Deploying on GlassFish Server 3+
    profile mode: false
    debug mode: false
    force redeploy: true
Starting GlassFish Server 3+ 

I chociaż nie mam jeszcze postawionej ani podpiętej bazy dostaję też to:

Wed May 16 12:47:48 CEST 2012 : DRDA_SecurityInstalled.I
Wed May 16 12:47:48 CEST 2012 : Serwer sieciowy Apache Derby - 10.8.2.2 - (1181258) uruchomiony i gotowy do zaakceptowania połączeń na porcie 1527 w {3}  

Jak staram się wejść w firefoxie przez localhost:1527 dostaję krzaczki, a standardowy localhost:8080 nie może się połączyć z serwerem.

Wygląda więc na to, że padł mi GlassFish, tylko czemu skoro jeszcze o 2. w nocy działał, a nic w nim nie zmieniałem?

0

Temat już nieaktualny.
Rozwiązanie okazało się dobre, a serwer Glassfish faktycznie nie chciał się uruchomić więc wywalenie go w netbeansie z servers w zakładce services, i dodanie na nowo rozwiązało problem.
Wiem, że pewnie do następnego uruchomienia, ale na razie może być.

1 użytkowników online, w tym zalogowanych: 0, gości: 1