Clientinformationen an eine Datenbank übergeben
Mit einer API oder einer Tracefunktion von WebSphere Application Server können Sie zu jeder Verbindung, die von derselben Datenquelle aus hergestellt wird, eindeutige Clientinformationen übergeben.
Informationen zu diesem Vorgang
- Der Verbindungsmanager kann die Clientinformationen zur Datenquelle bzw. die Verbindungen, die er von dieser Datenquelle erhält, nicht dynamisch ändern.
- Der Verbindungsmanager muss in allen Verbindungen, die er von einer Datenquelle erhält, dieselben Clientinformationen festlegen. Wenn Sie beispielsweise ApplicationName als Teil der Datenquelleneigenschaft clientInformation festlegen, dann haben alle Verbindungen von dieser Datenquelle denselben Anwendungsnamen.
Application Server bietet zwei Methoden für die Übergabe von Clientinformationen, die die erforderliche Flexibilität für die Verbindungsverwaltung liefern. Mit beiden Methoden haben Sie die Möglichkeit, in bestimmten Verbindungen Clientinformationen festzulegen und in anderen nicht, sowie für unterschiedliche Datenbankverbindungen aus derselben Datenquelle unterschiedliche Clientinformationen festzulegen.
Vorgehensweise
Beispiel: Clientinformationen mit der API "setClientInformation(Properties)" festlegen
Mit dieser API können Sie die WebSphere Application Server-Clientinformationen in Verbindungen festlegen, damit diese Informationen an die Datenbank übermittelt werden.
Der folgende Beispielcode ruft setClientInformation(Properties) für das Objekt com.ibm.websphere.rsadapter.WSConnection auf.
import com.ibm.websphere.rsadapter.WSConnection;
.....
try {
InitialContext ctx = new InitialContext();
// Namensservice-Lookup zum Abrufen des DataSource-Objekts durchführen.
DataSource ds = (javax.sql.DataSource)ctx.lookup("java:comp/jdbc/myDS");
}catch (Exception e) {System.out.println("got an exception during lookup: " + e);}
WSConnection conn = (WSConnection) ds.getConnection();
Properties props = new properties();
props.setProperty(WSConnection.CLIENT_ID, "user123");
props.setProperty(WSConnection.CLIENT_LOCATION, "127.0.0.1");
props.setProperty(WSConnection.CLIENT_ACCOUNTING_INFO, "accounting");
props.setProperty(WSConnection.CLIENT_APPLICATION_NAME, "appname");
props.setProperty(WSConnection.CLIENT_OTHER_INFO, "cool stuff");
conn.setClientInformation(props);
conn.close()
Parameter
- WSConnection.CLIENT_ACCOUNTING_INFO
- WSConnection.CLIENT_LOCATION
- WSConnection.CLIENT_ID
- WSConnection.CLIENT_APPLICATION_NAME
- WSConnection.CLIENT_OTHER_INFO
- WSConnection.OTHER_CLIENT_TYPE
Ausnahmen
Diese API erstellt eine SQL-Ausnahme, wenn die Datenbank beim Definieren der Daten eine Ausnahme auslöst.