Zakupiłem książkę "Spring w praktyce". W rozdziale nt. Spring Web MVC jest przedstawione jak zbudować web.xml, kontrolery itd. ale nie ma ani słowa jak ten projekt w ogóle uruchomić, co mnie doprowadza już do frustracji. Do Eclipse doinstalowałem STS, stworzyłem nowy projekt Maven Spring Web, mam kontroler, web.xml i co dalej? Nawet eclipse sam zrobił pom.xml, ale nie wiem jak to przetestować. Jestem newbie w Springu i Maven. W Eclipse JEE mogę chociaż uruchomic tomcata a tu nic.
Zrobiłem mvn compile i mvn package projektu i przechodzi bez błędów. Proszę o poprowadzenie za rączkę
Tutorial jednego z forumowiczy:
w drugim filmie jest stawianie projektu
@owca
w STS masz mozliwosc budowania projektów z szablonów w maven/gradle.
http://spring.io/guides
Polecam budowac projekty w oparciu o spring boota, posiada embedded tomcata (z defaulta)
kryptoreklama: https://github.com/Pharisaeus/SpringScaffoldApplication tu masz taki minimalistyczny szablon aplikacji webowej w springu, ściągnij i sie baw :)
Jakoś udało mi się coś wykombinować. Ten projekt ładuje plugin Jetty i
mvn jetty:run
uruchomiło serwer. Pod http://localhost:8080/sip/ mam ten projekt, ale nie do końca. Stworzyłem kontroler RosterController, a w nim metoda list(). Jak ją wywołać? http://localhost:8080/sip/roster/list daje 404
i skąd się bierze /sip? Wiem, że kodu nie widzicie wiec to wrózenie, ale jaka jest konwencja
Jak nie widzimy to pokaż?
Stworzyłem kontroler RosterController, a w nim metoda list(). Jak ją wywołać?
Adnotacja @RequestMapping, a ogólnie to włącz sobie dokumentację Spring MVC, świetna jest.
W sumie SpringMVC nie używałem tylko Jersey.. ale to chyba powinno się nadać...
@RestController
@RequestMapping(value="/sip") //czyli pewnie http://localhost:8080/sip
public class RosterController {
//i dalej...
@RequestMapping(value="/{user}/customers", method=RequestMethod.GET)
List<Customer> getUserCustomers(@PathVariable Long user) {
// ...
}
}
Udało mi się (dla mnie sporo :P ) rozkminić
Tutaj jest dostęp do metody list() i działa
http://localhost:8080/sip/main/roster/list
Tutaj jest routing
<bean name="/roster/*" class="com.springinpractice.ch03.web.RosterController"/>
Adnotacja bezpośrednio nad metodą nie była zrobiona
Więc jak już to mam, to mogę działać dalej. Dzięki za pomoc i pewnie jeszcze się odezwę z innym problemem wkrótce :)
dodanie znacznika <code class="xml">
- @furious programming