Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
filipfr
Člen
Avatar
filipfr:26.8.2018 19:02

Ahoj, podařilo se mi rozběhat Spring MVC, ale nedaří se mi zprovoznit @RestController, tak aby vracel json (asi ani XML, ale to mě momentálně nezajímá).
Při GET požadavku dostanu Status 406 The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers.

kontroler:
@RestController
public class GreetingController
{
@RequestMappin­g(value = "/greeting", produces="appli­cation/json")
public Greeting greeting(/*@Re­questParam(va­lue="name", defaultValue="Wor­ld") String name*/) {
return new Greeting("hello", "Franta");
}

}

tomu samozřejmě odpovídá třída Greeting s gettery a settery + konstruktor

dispatcher-servlet.xml:

<?xml version='1.0' encoding='UTF-8' ?>
<!-- was: <?xml version="1.0" encoding="UTF-8"?> -->
<beans xmlns = "http://www.sprin­gframework.or­g/schema/bean­s"
xmlns:context = "http://www.sprin­gframework.or­g/schema/contex­t"
xmlns:mvc="ht­tp://www.sprin­gframework.or­g/schema/mvc"
xmlns:xsi = "http://www.w3­.org/2001/XMLSc­hema-instance"
xsi:schemaLocation = "http://www.sprin­gframework.or­g/schema/beans
http://www.springframework.org/…ng-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/…text-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/…ring-mvc.xsd">

<context:component-scan base-package = "controllers" />
<mvc:annotation-driven />

<bean id="contentNe­gotiationMana­ger" class="org.sprin­gframework.web­.accept.Conten­tNegotiationMa­nagerFactoryBe­an">
<property name="favorPat­hExtension" value="false" />
<property name="favorPa­rameter" value="true" />
<property name="mediaTypes" >
<value>
json=applicati­on/json
</value>
</property>
</bean>

</beans>

předpokládám, že chyba je v kontroleru, ale jistej si nejsem
ještě přidám web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id = "WebApp_ID" version = "2.4"
xmlns = "http://java.sun­.com/xml/ns/j2e­e"
xmlns:xsi = "http://www.w3­.org/2001/XMLSc­hema-instance"
xsi:schemaLocation = "http://java.sun­.com/xml/ns/j2ee
http://java.sun.com/…-app_2_4.xsd">

<display-name>Spring MVC Application</dis­play-name>

<servlet>
<servlet-name>HelloWeb</ser­vlet-name>
<servlet-class>
org.springfra­mework.web.ser­vlet.Dispatcher­Servlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>HelloWeb</ser­vlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

</web-app>

Zkusil jsem: Zkoušel jsem prakticky všechny dotazy do googlu, které mě napadly a aplikovat navrhovaná řešení. Nejvíc mi jich vyběhlo při ctrl c, ctrl v - chybové hlášky, ale nepomohlo nic.

Chci docílit: Snažím se přes Insomnii dostat příslušný json, abych s ním mohl pracovat.

 
Odpovědět
26.8.2018 19:02
Avatar
filipfr
Člen
Avatar
Odpovídá na filipfr
filipfr:26.8.2018 19:05

"dispatcher-servlet.xml" se samozřejmě reálně jmenuje "HelloWeb-servlet.xml"

 
Nahoru Odpovědět
26.8.2018 19:05
Avatar
Odpovídá na filipfr
Matúš Olejník:26.8.2018 19:53

Ahoj, skopíruj sem aj obsah z pom.xml a vlož ho medzi [ code] [ /code]

Nahoru Odpovědět
26.8.2018 19:53
/* I am not sure why this works but it fixes the problem */
Avatar
filipfr
Člen
Avatar
Odpovídá na Matúš Olejník
filipfr:26.8.2018 20:04

Ahoj, to nepůjde. To je projekt s přidaným Springem (není to Maven projekt). "pom.xml" neexistuje.

 
Nahoru Odpovědět
26.8.2018 20:04
Avatar
Odpovídá na filipfr
Matúš Olejník:26.8.2018 20:57

Hmm tak máš v projekte knižnice niečo ako jackson-core...jar, jackson-databind...jar?

Nahoru Odpovědět
26.8.2018 20:57
/* I am not sure why this works but it fixes the problem */
Avatar
filipfr
Člen
Avatar
Odpovídá na Matúš Olejník
filipfr:26.8.2018 21:24

Aha to nemám. A písneš teda který jar. tam potřebuju?Díky

 
Nahoru Odpovědět
26.8.2018 21:24
Avatar
filipfr
Člen
Avatar
Odpovídá na filipfr
filipfr:26.8.2018 21:26

Já myslel, že je to defaultně ve Springu.

 
Nahoru Odpovědět
26.8.2018 21:26
Avatar
Odpovídá na filipfr
Matúš Olejník:26.8.2018 22:09

Skús toto mohlo by to stačiť. Inak keďže začínaš nechceš rovno začať používať aj Maven a prípade SpringBoot? Tuto https://start.spring.io/ si naklikáš dependencies ktoré potrebuješ, dáš generate project a následne ho otvoríš ako maven projekt.

Nahoru Odpovědět
26.8.2018 22:09
/* I am not sure why this works but it fixes the problem */
Avatar
filipfr
Člen
Avatar
Odpovídá na Matúš Olejník
filipfr:26.8.2018 22:16

Díky, zkusím. Já ho nepoužil protože jsem se dočetl, že se hodí na větší projekty. A to jsem neplánoval.

 
Nahoru Odpovědět
26.8.2018 22:16
Avatar
Odpovídá na filipfr
Matúš Olejník:26.8.2018 22:19

Tak na menšom projekte si ho aspoň vyskúšaš :-)

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
26.8.2018 22:19
/* I am not sure why this works but it fixes the problem */
Avatar
filipfr
Člen
Avatar
Odpovídá na Matúš Olejník
filipfr:1.9.2018 10:15

Ahoj, tak jsem začal od píky s Mavenem a funguje to. Díky

 
Nahoru Odpovědět
1.9.2018 10:15
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.