Hallo Zusammen,
ich hoffe, dass mir hier geholfen werden kann.
Folgende Ausgangssituation:
Ich habe eine JSF-Webapplikation, die mit hilfe einer jsp-Seite mir einen Text ausgibt.
Nun habe ich dazu eine JAX-RS Schnittstelle implementiert, die die Variablen in der ManagedBean anpasst (welche von der jsp-Seite angepasst wird).
Wenn ich den entsprechenden Path mit Parametern manuell (im Browser) aufrufe, funktioniert alles.
Nun möchte ich aber aus einer (exthernen) Java-Applikation diese JAX-RS-Schnittstelle ansprechen, um gewünschte Daten an die Webapplikation zu übergeben.
Ich habe mir hierzu die URLConnection angeschaut, komme aber nicht weiter.
Hierbei handelt es sich nur um ein kleines Übungsprojekt, um mich in die Materie einzuarbeiten.
Ansonsten wäre es auch etwas viel aufwand, um einen Text/String auszugeben:-D
Hier meine Klassen:
CopyForm.java (ManagedBean)
Die JAX-RS-Ressource:
Und die jsp:
faces.xml und web.xml erspare ich mir an dieser Stelle, da die Applikationen an sich ja funktionieren.
Wichtig wäre noch, dass ich nicht per GET Daten-Strings an die URL anhängen möchte, sondern per POST Daten übergeben möchte.
Kann mir jemand hierbei helfen bzw. einige Stichpunkte nennen, was ich mir genauer anschauen kann?
Gruß
ich hoffe, dass mir hier geholfen werden kann.
Folgende Ausgangssituation:
Ich habe eine JSF-Webapplikation, die mit hilfe einer jsp-Seite mir einen Text ausgibt.
Nun habe ich dazu eine JAX-RS Schnittstelle implementiert, die die Variablen in der ManagedBean anpasst (welche von der jsp-Seite angepasst wird).
Wenn ich den entsprechenden Path mit Parametern manuell (im Browser) aufrufe, funktioniert alles.
Nun möchte ich aber aus einer (exthernen) Java-Applikation diese JAX-RS-Schnittstelle ansprechen, um gewünschte Daten an die Webapplikation zu übergeben.
Ich habe mir hierzu die URLConnection angeschaut, komme aber nicht weiter.
Hierbei handelt es sich nur um ein kleines Übungsprojekt, um mich in die Materie einzuarbeiten.
Ansonsten wäre es auch etwas viel aufwand, um einen Text/String auszugeben:-D
Hier meine Klassen:
CopyForm.java (ManagedBean)
Java:
@ManagedBean(name="cf")
public class CopyForm{
String nachricht;
String test;
static ArrayList<String> entities = new ArrayList<String>(0);
public void setNachricht (String nachricht) {
this.nachricht = nachricht;
//return "ok";
}
public String getNachricht () {
return nachricht;
}
public void setTest (String test) {
this.test = test;
}
public String getTest() {
return test;
}
public String getProbs() {
StringBuilder probs= new StringBuilder ("");
for (int i=0;i<entities.size();i++){
probs.append(entities.get(i));
}
return probs.toString();
}
public static void addProb(String value) {
entities.add(value);
}
}
Die JAX-RS-Ressource:
Java:
@Path("/message")
public class MessageResource {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String message() {
return "Hello World!";
}
//@PUT
@POST
@Path("add")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.TEXT_PLAIN)
public String chanceText(String message){
CopyForm.addProb(message);
return "<h1>Done: "+ message + "</h1>";
}
}
Und die jsp:
HTML:
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<html lang="en"
xmlns:h="http://java.sun.com/jsf/html">
<f:view>
<h:outputText value="Notice: #{cf.probs}" />
<h:form>
<h:outputText value="Nachricht:"/>
<h:inputText value="#{cf.nachricht}"/>
<h:commandButton value="senden"/>
</h:form>
<h:outputText value="#{cf.nachricht}" />
</f:view>
</html>
faces.xml und web.xml erspare ich mir an dieser Stelle, da die Applikationen an sich ja funktionieren.
Wichtig wäre noch, dass ich nicht per GET Daten-Strings an die URL anhängen möchte, sondern per POST Daten übergeben möchte.
Kann mir jemand hierbei helfen bzw. einige Stichpunkte nennen, was ich mir genauer anschauen kann?
Gruß