XML File während Applet-Start auslesen?

Status
Nicht offen für weitere Antworten.
M

madman

Gast
Hallo,

ich bin grad dabei ein Applet zu erstellen, welches per JDBC von einer Oracle Datenbank Daten abfragen soll.
Das Applet ist signiert, wird von einem Webserver runtergeladen und verbindet sich mit der Oracle Datenbank, die sich auf einem anderen Server befindet. Soweit klappt das.
Das Applet ist ja nun compiliert und die Oracle-Zugangsdaten (String username = "nousername"; und String password = "nopassword";) sind nicht mehr veränderbar. Außer man compiliert das Apllet neu.

Die Frage ist nun aus diesem Grund, ob es möglich ist die Oracle-Zugangsdaten in ein XML-File zu auf dem Webserver hinterlegen. Das XML-File soll sich im gleichen Verzeichnis wie das Applet befinden und die Daten während dem Start auf dem Clientrechner ausgelsen werden.

Mit welchen Klasse ist es zu realisieren? Kennt vieleicht jemand einen ersten Lösungsansatz oder ein Beispiel?

Vielen Dank für eure Hilfe!

Gruß
Mike

Code:
 //--------------------XML-File---------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>

	<context name="database">
		<param name="OracleUser" value="username"/>
		<param name="OraclePassword" value="password"/>
	</context>


Code:
 //--------------------JDBC---------------------------------------------------------------

if(ae.getSource().equals(Button))
		{
			    Connection connection;
			       
			    	 //1. JDBC-Treiber laden
			        String driverName = "oracle.jdbc.driver.OracleDriver";
			    
			        try {
		    	           Class.forName(driverName);
		    	          

		    	      } catch (Exception e) {
		    	    	   System.out.println("Es gibt ein Problem mit dem DB-Treiber:" + e);
		    	       }
		
			        //2. Datenbank-URL spezifizieren   		       
			        String url = "jdbc:oracle:thin:@xytestdb:1521:db";
                                
                   //Daten aus XML-holen
			        String username = ?????
			        String password = ?????
			        
			  	        
			        //3. Verbindung zur Datenbank aufbauen
			        connection = DriverManager.getConnection(url, username, password);

			        System.out.println("Verbindung zur Datenbank '" + connection.getCatalog() + "' hergestellt");
			        
			        //4. Statement erzeugen
			        Statement myStatement = connection.createStatement();
			        
			        //5. Abfrageterm als String
 
			        String abfrageString = "Select " +
			        "TITEL, NAME, NUMMER " +
	        		"FROM " +
	        		"DATEN WHERE " +
	        		"NUMMER=12345678";
 
			        //6. Abfrage ausfuehren
			        ResultSet result =	myStatement.executeQuery(abfrageString);
			      
			        //7. Abfrageergebnis auswerten und ausgeben
			        while (result.next()) {
			     
			        	System.out.println("Titel: " +result.getString("TITEL"));
			        	System.out.println("Name: " +result.getString("NAME"));
			        	System.out.println("Nummer: " +result.getString("NUMMER"));

				        }
}
 

Wildcard

Top Contributor
Denk nochmal drüber nach ob du die Zugangsdaten wirklich öffentlich zugänglich machen willst.
 
G

Guest

Gast
Hi Wildcard,

Gibt es noch andere Möglichkeitend diese Sache mit XML zu lösen?
Ich meine, dass Applet immer neu zu comlilieren ist jetzt auch nicht die beste Lösung.
Das XML-File soll ja nicht auf den Client heruntergeladen werden. Es soll in irgendeinem Verzeichnis auf dem Webserver im Intranet bleiben. Die Daten werden ja nur eingelesen.

Gruß
Mike
 

Noctarius

Top Contributor
Auch im kompilierten Client stehen die Daten drin und können ausgelesen werden. Alternativ könntest du RMI benutzen ;)
 
M

madman

Gast
Leider muss ich es auf diese Weise machen. Die Zugangsdaten sollen aus einem XML-File eingelesen werden. RMI kommt hier nicht in Frage.

Meine Augenmerk richtet sich nun wieder an meine Anfrage, mit der ich das Thema eröffnet habe.
Ich hoffe sehr, dass mir jemand diesbezüglich ein paar Hinweise geben könnte!
Danke.

Gruß
Mike
 

Wildcard

Top Contributor
Damit das Applet sie über eine URL-Connection auslesen kann, musst du sie so ablegen, dass dein Webserver sie ausliefert.
Das bedeutet natürlich das sie auch jeder andere von dort abholen kann.
Also ich würd mir die Sache nochmal überlegen....
 
M

madman

Gast
Hi Wildcard,

ich steh grad ein bisschen auf dem Schlauch.
Damit das Applet sie über eine URL-Connection auslesen kann, musst du sie so ablegen, dass dein Webserver sie ausliefert.
Vielen Dank für den Hinweis das File über URL-Connection vom Client aus auszulesen (siehe Code unten). Anfangs dachte ich verkehrt herum. Aber was meinst damit, das XML-File so abzulegen, dass der Webserver sie ausliefern kann?
Das bedeutet natürlich das sie auch jeder andere von dort abholen kann.
Das XML-File soll in einem Unterverzeichnis des Webservers liegen. Sicher bedeutet dies, dass auch jeder Zugriff auf das File haben kann, wenn man weiss wo es abgelegt ist.

Also ich würd mir die Sache nochmal überlegen....
Aber lassen wir diese Bedenken ausser Acht, da es im Moment keinen anderen Weg gibt und ich es so machen muss. Oder fällt dir spontan eine anderer Weg ein? :)

Gruß
Mike


Code:
String nextLine;
		       URL url = null;
		       URLConnection urlConn = null;
		       InputStreamReader  inStream = null;
		       BufferedReader buff = null;
		       try{
		          
		          url  = new URL("http://localhost/xml/oracle.xml" );
		          urlConn = url.openConnection();
		         inStream = new InputStreamReader( 
		                           urlConn.getInputStream());
		           buff= new BufferedReader(inStream);

		        while (true){
		            nextLine =buff.readLine();  
		            if (nextLine !=null){
		                System.out.println(nextLine); 
		                
		               //Daten filtern und weiterverarbeiten

		            }
		            else{
		               break;
		            } 
		        }
		     } catch(MalformedURLException e){
		       System.out.println("URL überprüfen:" + 
		                                           e.toString() );
		     } catch(IOException  e1){
		      System.out.println("Kein Zugang zum Intranet: "+ 
		                                          e1.toString() ); 
		  }
[/quote]
 
M

madman

Gast
Klar sieht die anders aus. Hab nur zum Test auf meinem Laptop IIS installiert. :)
 

Wildcard

Top Contributor
Hast du jetzt noch eine Frage, oder ist die Sache erledigt?

PS:
Sicher bedeutet dies, dass auch jeder Zugriff auf das File haben kann, wenn man weiss wo es abgelegt ist.
Und natürlich jeder der das Applet verwenden kann.
 
M

madman

Gast
hi,

Und natürlich jeder der das Applet verwenden kann.

Genau. Schliesslich dient das Applet dazu Daten aus der Datenbank abzurufen. Und ohne Zugangsdaten gibts keine Daten :)

Die Sache ist soweit erledigt. Vielen Dank nochmal.

Code:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E JAXB und java.nio.file.Path XML & JSON 4
Trèfle Formatierung v. JSON File XML & JSON 7
L login - Java IOException jaas.config File or Directory not present XML & JSON 1
G Probleme mit Jsoup in .jar File XML & JSON 11
K JAR-File mit XML-Datei XML & JSON 1
JBoby Yaml File lesen und in Objekte umwandel (SnakeYAML / YamlBeans) XML & JSON 0
O XML Zugriff auf Entity File XML & JSON 0
B xsd-Datei ins jar file XML & JSON 5
S XLSX-File NoSuchMethodError XML & JSON 7
M SEPA XML file XML & JSON 11
S Xml File für den Aufbau einer anderen Xml Datei XML & JSON 6
S XML file lässt sich in Eclipse nicht erstellen XML & JSON 2
M <root> node in bestehendes XML-File XML & JSON 8
jstei001 .xsd File wärend der Laufzeit einlesen und XMl rausschreiben XML & JSON 5
L Datenstruktur in XML-File schreiben XML & JSON 2
Q XML-File als Objekt in Java XML & JSON 6
G DXF-File schreiben XML & JSON 17
GUI-Programmer java.io.File aus .jar beziehen XML & JSON 6
B XML file erstellen und in lesbarer form speichern XML & JSON 2
M XML File generieren XML & JSON 3
S Aus XML-File eine Baumstruktur erzeugen XML & JSON 5
N XML File aus Internet korrekt mit absätzen formatiert abspeichern XML & JSON 10
J xmlParser/-Writer: DTD in seperates File auslagern XML & JSON 4
C Xml file gegen eine DTD validieren XML & JSON 3
G Problem beim schreiben von XML in eine File XML & JSON 2
S Premature end of file XML & JSON 7
T File öffnen XML & JSON 6
B XML file für schtasks XML & JSON 5
G Simples XML File einlesen mit JDom. Prefix not bound ? XML & JSON 2
G Xml File schematisch auslesen XML & JSON 2
J File objekt in xml speichern? XML & JSON 12
G XMLEncoder: discarding statement LinkedList.add(File) XML & JSON 16
X XML File auslesen/parsen u. in ne Hashmap speichern XML & JSON 2
M Unhierarchisches XML-File mit DOM-Parser auswerten XML & JSON 5
X Einzelne Tags rausnehmen aus einem großen XML-file XML & JSON 4
E XOM setzen von XML-Schema declaration beim erzeugen XML-File XML & JSON 2
M XSL-File für Transformation verwenden XML & JSON 3
M XML-File verabeiten XML & JSON 19
A XML-File auslesen, alles leer? XML & JSON 2
S Geändertes XML-File wieder abspeichern. XML & JSON 10
D XML-file mit Eclipse erstellen + Namespaces XML & JSON 2
A html-File nach txt-File konvertieren XML & JSON 15
K XML to file geht nicht :( XML & JSON 4
A Internetinhalte auslesen und in einem XML-File speichern XML & JSON 4
T select-statement aus mysql in ein xml-file umwandeln XML & JSON 3
J XML File updaten XML & JSON 2
A XML-file an der Konsole ausgeben XML & JSON 4
D In ein XML File meinStyleSheet.css eintragen? XML & JSON 9
J Client für WebService programmieren (aus WSDL-File) XML & JSON 15
R wie kann ich ein xml file in einen string einlesen? XML & JSON 2
M *.group() in File auslesen XML & JSON 4
A XML-File ausgeben XML & JSON 2
W aus XML-File gelesenes als Methodenaufruf verwenden XML & JSON 5
T Elemente aus XML-File löschen (JDom) XML & JSON 9
T [JDOM] XML File, neue Daten hinzufügen XML & JSON 5
D Aus Java XML-File an PHP-Skript senden: Encodingproblem? XML & JSON 3
T Prob: Auslesen XML File mit JDOM XML & JSON 2
B DOM oder HTML File drucken "wie ein Browser es zeigen w XML & JSON 3

Ähnliche Java Themen

Neue Themen


Oben