redirect in neuem Fenster?

Status
Nicht offen für weitere Antworten.

Wyvern

Mitglied
Hi.

Ich muß bei einer Struts Homepage einen HTTP GET request an eine komplett andere Seite abschicken. Ich darf aber meine Seite dazu nicht verlassen. Wie kann ich sowas machen? Kann ich das mit nem neuen Fenster machen? Oder muß ich dazu eine neue Seite mit den Daten in hidden feldern und einem extra Formular (mit target="new") erstellen?

Jemand ne Idee?
 

Wyvern

Mitglied
Vielleicht etwas abenteuerlich meine Idee:

Ist es möglich ein zweites verstecktes Formular auf der selben Seite zu machen? Beim abschicken des ersten Formulars (<html:form.... ) werden die Daten bei mir gespeichert, und das zweite Formular (<form ... ) gefüllt. Und das wird auch gleich abgeschickt?

Ich glaub, das geht net. Verdammt!
 
G

Gast

Gast
Hier hilft wohl nur Javascript. Damit Fenster öffnen mit eigenem Request, im alten Fenster zweiten Request absetzen.

Serverseitig geht nix, außer wiederrum eine Antwort zu generieren, die auf dem Client per JS ein Fenster öffnet.
 

WeirdAl

Bekanntes Mitglied
Hi,
sind die zwei Seiten innerhalb eines Projekts? Oder liegen die zwei Seiten auf verschiedenen Server bzw. was macht die andere Seite mit den Daten?

Du kannst Dir mal ServletFilter ansehen. Evtl. kannst Du damit bei einem eingehenden Request die Daten zu der zweiten Seite weiterschleifen. Wenn die zweite Seite "eh" unsichtbar sein soll, willst Du vielleicht sowieso nur die Daten verarbeiten und nichts anzeigen.

Cu
Alex
 

Wyvern

Mitglied
Ich muß einen Request vom User verarbeiten, und dem User auf meiner Seite ne Antwort schicken.
Gleichzeitig muß ich aber Serverseitig quasi als eigener Client einem anderen Server (nicht bei mir) einen GET request schicken. Einfach nur schicken. Ich muß nicht mal zwingend ne Antwort abwarten.
 

Wyvern

Mitglied
Hab nen andere Lösungsansatz (der hoffentlich auch irgendwann funzt)

Code:
String target = "http://app.communicatorcorp.com/TriggerWebService/TriggerService.asmx/DataImport";
			target += "?clientId="+username+"&password="+password+"&xmlData="+xml;
			
			try{
				URL url = new URL(target);
		        	HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
		        
		        	httpConn.setRequestMethod("GET");
		        	httpConn.setDoOutput(true);
		        	httpConn.setDoInput(true);
		        	httpConn.setUseCaches(false);
		        
		        	if (httpConn.getResponseCode() != HttpURLConnection.HTTP_OK) {
		        		System.out.println(httpConn.getResponseMessage());
		        		System.out.println(httpConn.getResponseCode());
		        	}
		        	httpConn.disconnect();
		        } catch(Exception m) {
		        	m.printStackTrace();
	        	}

Wenn ich das, was in target steht in nem Browser abschicke, dann bekomm ich ein 200 HTTP_OK. (Hab ich mit Live HTTP Headers gecheckt)
Wennich allerdings meine Action laufen lasse, dann bekomm ich immer 400 HTTP_BAD_REQUEST. Woran könnte das liegen?
 

Wyvern

Mitglied
Wenn ich ein httpConn.getInputStream() einbaue, um den Request abzuschicken, dann bekomm ich ebenfalls ein 400 BAD REQUEST auf die Console, weil dann die IOException anspringt.

Ohne httpConn.getInputStream() kommt nu meine System.out. ausgabe BAD REQUEST 400.

Ich hab keine Ahnung mehr.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben