HTTP Daten an Server übergeben

Lonsdaleit

Aktives Mitglied
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)
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ß
 

Lonsdaleit

Aktives Mitglied
Vielen Dank.

Darauf bin ich während meiner Recherche bereits gestoßen.

Ich konnte das Problem lösen.

Der Fehler lag hier:

Java:
@POST
@Path("add")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.TEXT_PLAIN)
public String chanceText(String message){
    CopyForm.addProb(message);
    return "<h1>Done: "+ message + "</h1>";
}

Wenn ich mit der POST-Methode arbeite, übergebe ich @FormParam.
Soweit war ich vorher auch schon, da dies aber nicht funktionierte, nahm ich an auf dem falschen Weg zu sein.

Zu dem Fehler.
Durch den Form-Parameter wird kein MediaType.TEXT_PLAIN übergeben. Dadurch kam es zu dem Fehler, der mir aber explizit nicht als solcher angezeigt wurde, da der Request an sich durchgeführt werden konnte.

Ich habe die Zeilen angepasst in:
Java:
@POST
@Path("add")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.MEDIA_TYPE_WILDCARD)
public String chanceText(@FormParam("message") String message){
	CopyForm.addProb(message);
	return "<h1>Done: "+ message + "</h1>";
}

Nun funktioniert alles wie erwartet!

Danke für die Anregungen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
X Kann ich einen Client/Server verbindung hinkriegen die mir alle paar Sekunden die aktuellen Daten per Realtime zuschickt ? Netzwerkprogrammierung 9
Z Kann nicht Daten vom Server lesen Socket Netzwerkprogrammierung 10
D Mit Server Daten austauschen Netzwerkprogrammierung 4
K Server liest Daten nicht Netzwerkprogrammierung 6
S Server - Mehrere Klassen sollen Daten senden und empfangen Netzwerkprogrammierung 25
S Server Client Daten hin und herschicken Netzwerkprogrammierung 2
J Applet soll Daten auf Server ablegen - einfachster Weg fuer n00bs? Netzwerkprogrammierung 4
S Socket XML-Daten und Parameter an Server schicken Netzwerkprogrammierung 3
P Server/Client Daten empfangen, wenn Daten gesendet werden Netzwerkprogrammierung 9
A Socket Client Server Connection wird aufgebaut aber keine daten geschickt. Netzwerkprogrammierung 5
N Per POST -Methode Daten an den Web-Server übertragen. Netzwerkprogrammierung 9
H Server soll Daten schicken, aber wie? Netzwerkprogrammierung 47
G unvollständige Daten: Http Client-Server-Kommunikation Netzwerkprogrammierung 2
M Einfachste Möglichkeit aus'm Applet Daten an Server senden Netzwerkprogrammierung 6
D Daten per Server- Client nur als byte verschicken? Netzwerkprogrammierung 3
OnDemand Daten per API senden, parallel Netzwerkprogrammierung 9
S Daten über TCP/IP senden Netzwerkprogrammierung 3
B Daten an Javaprogramm per URI Aufruf übergeben Netzwerkprogrammierung 7
N websocket - keine Daten mehr nach ca 80 Sekunden Netzwerkprogrammierung 0
C Spezielle Daten aus Website entnehmen Netzwerkprogrammierung 5
H Daten auf einer Webseite eintragen Netzwerkprogrammierung 11
A Socket Daten in Textdokument speichern? Netzwerkprogrammierung 1
T Socket Java Programm hängt sich auf bei dem versuch von einem Socket scanner Daten zu erhalten. Netzwerkprogrammierung 1
J Daten von einem HTML-Textfeld abrufen Netzwerkprogrammierung 3
S Fakturierungsprogramm - Daten aktuell halten (blutiger Anfänger) Netzwerkprogrammierung 1
R Daten von Cloud laden Netzwerkprogrammierung 5
fLooojava Daten an ein Arduino im selben Netzwerk senden Netzwerkprogrammierung 1
X Daten können nicht sofort empfangen werden Netzwerkprogrammierung 1
P Socket Best Practice: Daten bündeln Netzwerkprogrammierung 5
E Verfügbarkeit von Daten in Streams Netzwerkprogrammierung 4
F Daten aus Internetseiten auslesen Netzwerkprogrammierung 56
S Seltsames Verhalten beim Empfangen von Daten über DataInputStream Netzwerkprogrammierung 12
P Socket Daten senden mit ServerSocket? Netzwerkprogrammierung 2
H Daten an Textfeld einer Webseite schicken Netzwerkprogrammierung 2
A versch. Daten im Stream erkennen Netzwerkprogrammierung 2
D daten per post senden Netzwerkprogrammierung 3
M Senden von Daten nicht direkt möglich? Netzwerkprogrammierung 6
F Socket Daten über verschiedene IP's schicken Netzwerkprogrammierung 5
F UDP Daten kommen nicht an Netzwerkprogrammierung 22
E Socket OutputSream abbruch.Wegen zuviel !empfangener! Daten? Netzwerkprogrammierung 10
C Client zu Client Daten übertragen Netzwerkprogrammierung 13
S Thread, Daten vom Socket lesen Netzwerkprogrammierung 2
M Objekt über Object-Stream, empfange "alte" Daten Netzwerkprogrammierung 2
P HttpClient - Daten einer Website "unvollständig" Netzwerkprogrammierung 5
K Socket Daten lesen ohne Längenangabe Netzwerkprogrammierung 19
T RMI Effizenteste Übertragung von Daten Netzwerkprogrammierung 6
B Socket Daten empfangen funktioniert nicht richtig - wo liegt der Fehler? Netzwerkprogrammierung 7
Kr0e Versenden von Daten übers Netzwerk Netzwerkprogrammierung 30
E Daten kommen anders an als gesendert ?! Netzwerkprogrammierung 6
S HttpURLConnection POST splittet Daten in zwei Pakete Netzwerkprogrammierung 9
F POST-Daten sende Netzwerkprogrammierung 3
E HTTPS Debuggen (verschlüsselte Daten anzeigen)? Netzwerkprogrammierung 12
Iron Monkey Große Daten ins Vector füllen Netzwerkprogrammierung 4
S Probleme beim senden von Daten per POST Methode an PHP Scrip Netzwerkprogrammierung 5
D Daten, die mit PHP erzeugt werden, mit Java auslesen Netzwerkprogrammierung 8
M Ethernet Daten abfangen Netzwerkprogrammierung 13
F Daten senden und empfangen mit Applet Netzwerkprogrammierung 8
I Problem beim empfangen von Daten (Zahlen) Netzwerkprogrammierung 7
S Daten per GET-Methode Netzwerkprogrammierung 2
M Socket schließt bevor Daten komplett geladen Netzwerkprogrammierung 5
C Flash Daten an Java senden, wie serialisieren? Netzwerkprogrammierung 3
E rxtx serielles senden von Daten Netzwerkprogrammierung 2
D Socket, Daten über BufferedWriter senden Netzwerkprogrammierung 18
G TCP Verbindung überprüfen OHNE daten zu verschicken Netzwerkprogrammierung 11
M Daten übers Netz verschlüsselt übertragen? Wie? Netzwerkprogrammierung 18
J Post-Daten an URL schicken Netzwerkprogrammierung 2
U Image erzeugen aus empfangenen Daten Netzwerkprogrammierung 7
A Wie werden Daten versendet? "Crashcode" Netzwerkprogrammierung 4
D Frage: Buffered Reader --> Wie komm ich an die Daten (Byt Netzwerkprogrammierung 3
E Multi-Part Form-Daten mit HttpURLConnection Netzwerkprogrammierung 6
A Datenverlust (zuviele Daten!) über Sockets Netzwerkprogrammierung 4
T Daten über GSM verschicken Netzwerkprogrammierung 4
P Verschiedene Daten über einen Stream Netzwerkprogrammierung 4
M Verliere Daten mit WinXP Netzwerkprogrammierung 10
O eingehende Daten speichern Netzwerkprogrammierung 3
D UDP-Daten anzeigen Netzwerkprogrammierung 2
A daten an php script per post senden und ausgabe einlesen Netzwerkprogrammierung 6
F http Post auf einen Grafana Server Netzwerkprogrammierung 3
W Socket Server -> lesen von / schreiben zu php-script Netzwerkprogrammierung 6
E Server mit GUI Netzwerkprogrammierung 4
E FTP FTPS Server gibt Fehlernachricht "522 SSL/TLS required on the data channel" zurück Netzwerkprogrammierung 1
I Performanteste Kommunikationsmethode zwischen Client u. Server Netzwerkprogrammierung 4
L Socket Automatische Zuweisung von Server und Client Rolle Netzwerkprogrammierung 12
Eigenen Rechner als Server? Netzwerkprogrammierung 16
FrankenDerStein HTTP Https Server Bibliothek für Linux und Android gesucht. Netzwerkprogrammierung 7
ExceptionOfExpectation Server/Client-Kommunikation Netzwerkprogrammierung 34
M Server-Client-System für Browsergame Netzwerkprogrammierung 5
J Datei Download vom Server Netzwerkprogrammierung 8
izoards Mehrere TCP Verbindungen auf einen Server [alles Local] Netzwerkprogrammierung 2
Yonnig Threads mit Client/Server und GUI (laufend bis button-click) Netzwerkprogrammierung 9
J Client-Server und SOAP Netzwerkprogrammierung 23
K Threads/Server/telnet Fehler Netzwerkprogrammierung 2
J Multithreaded-Server Netzwerkprogrammierung 21
JaXnPriVate Java HTTPS Server (Secure Sockets) Netzwerkprogrammierung 15
L30nS RMI RMI-Server kann Dialog nicht volkommen anzeigen Netzwerkprogrammierung 2
L30nS RMI Aufruf einer Client-Methode von einem RMI-Server Netzwerkprogrammierung 3
L Server-Socket liest Input-Stream nicht Netzwerkprogrammierung 5
T String von Client zu Server kommt nicht an Netzwerkprogrammierung 92
D WebSocket Server mit HTML Client und Java Server Netzwerkprogrammierung 5
S Von Java auf passwortgeschützten Server zugreifen + Umgang mit Ports Netzwerkprogrammierung 28

Ähnliche Java Themen

Neue Themen


Oben