Oracle9i JDeveloper Web Web Web Web Web Web EJB Web EJB Web Web Oracle9iAS Apache SOAP WSDL Web Web Web Oracle9i JDeveloper Java XML Web Web Web Web Simple Object Access Protocol SOAP :Web Web Services Description Language WSDL :Web Universal Description, Discovery and Integration UDDI :Web Java RMI Remote Method Invocation Oracle Net Oracle9i Database DCOM Microsoft Web Java PL/SQL Web Web WSDL SOAP UDDI 1 Web
1:SOAP WSDL UDDI Web Web J2EE CORBA DCOM Web XML XML CORBA IDL Web WSDL CORBA Internet Inter-ORB Protocol IIOP SOAP SOAP XML CORBA CosNaming Interoperable Object References IOR CORBA Web WSDL UDDI Web HTTP Web Web Web Web SOAP WSDL UDDI Oracle Web E-Business Suite ebxml Electronic Business XML RosettaNet Web Java Web Oracle Web J2EE Web Java Community Process JCP J2EE 1.4 Java Specification Request 109 JSR109 J2EE
Web J2EE RAD Web Web publishing consuming Web locating introspecting Web composing Web orchestrating Oracle9i JDeveloper Oracle9i JDeveloper Java Java IDE Windows Solaris Linux Java Oracle9i JDeveloper J2EE J2EE Web Oracle9i JDeveloper Web Web Oracle9i JDeveloper UML Web Web Web 2 Oracle9i JDeveloper Web 3 Web Trip Planning Service Trip Costing Service Trip Booking Service J2EE Web 2:Oracle9i JDeveloper Web
EJB Web Oracle9i JDeveloper Web Enterprise JavaBean Session EJB Bean Entity EJB Message-Driven Bean Enterprise JavaBean Java 2 Plan Trip 3 TravelSearchEJB Session EJB EJB findflight 3:Oracle9i JDeveloper EJB
1 findflight SQL TRAVEL J2EE Java public String[] findflight String origin,string dest throws RemoteException { String[] flights = new String[5]; String SQL = "select flight.air_code, flight.flight_number, fare.standard_price," + "to_char departure.departure_date, 'Mon DD, RRRR', " + "departure.departure_time " + "from flight_routes flight, fare_schedules fare,flight_departures departure " + "where origin_arp_code =? " + "and dest_arp_code =? and departure.flr_id = flight.route_id " + "and flight.route_id = fare.flr_id " + "and sysdate < departure.departure_date " + "order by departure.departure_date asc"; try { conn = getconnection dsname ; ps = conn.preparestatement SQL ; ps.setstring 1, origin ; ps.setstring 2, dest ; ps.executequery ; ResultSet rs = ps.getresultset ; int i =0; while rs.next && i < 5 { flights [i] = new String rs.getstring 1 +" "+ rs.getstring 2 + "/"+rs.getstring 4 + " / $"+rs.getstring 3 ; i++; catch SQLException e { throw new RemoteException e.getmessage ; finally { try { ps.close ; catch Exception e { try { conn.close ; catch Exception e { return flights; 1:findFlight EJB Java J2EE EJB Enterprise JavaBean JAR Web Web Java JAR Oracle9i JDeveloper J2EE & Oracle9iAS Containers for J2EE OC4J BEA Weblogic 4 Oracle9i JDeveloper 5 TravelSearchEJB Enterprise JavaBeans
4:Oracle9i JDeveloper J2EE 5:Oracle9i JDeveloper EJB
EJB Web Oracle9i JDeveloper Web Web EJB Web Oracle9i JDeveloper JCP J2EE 1.4 JSR 109 Oracle9i Application Server J2EE Web Apache SOAP Web TravelSearchEJB Web 6 9 6:Web 7: EJB URI Oracle9i Application Server Web J2EE 1.4/JSR 109 Apache SOAP 2.2
8:Web 9:Web WSDL Web Web Web Oracle9iAS Containers for J2EE OC4J J2EE web.xml WAR web.xml SOAP EJB SOAP 1 WAR 10 1 Oracle9iAS Web SOAP Enterprise JavaBean
10:Oracle9iAS Containers for J2EE Web Apache SOAP Oracle9i JDeveloper Web Web Apache SOAP Oracle9iAS Web Apache SOAP SOAP SOAP 11 TravelSearchEJB SOAP Apache SOAP 11: Apache SOAP Web
Web Web Enterprise JavaBean Web Web WSDL Web Web Oracle9i JDeveloper Web Web Service Description Language WSDL Oracle9i JDeveloper WSDL Web SOAP WSDL WSDL Web XMethods http://www.xmethods.com/ SalCentral http://www.salcentral.com/ Web Web WSDL URL Web UDDI Web UDDI WSDL Oracle9i Application Server UDDI Web TravelSearchEJB J2EE Oracle9i JDeveloper Web WSDL 12 Enterprise JavaBean WSDL 12:Oracle9i JDeveloper Web WSDL
Oracle9i Application Server Web WSDL Web WSDL WSDL TravelSearchEJB Web URL WSDL http://localhost:8888/travel-context-root/ws.travelsearchejb?wsdl Oracle9i JDeveloper Web Web WSDL Oracle9i JDeveloper XML WSDL WSDL XML Schema 12 TravelSearchEJB Web WSDL Oracle9i JDeveloper XML XML WSDL 13 Oracle9i JDeveloper WSDL XML Schema 13: Web TravelSearchEJB Web Web Web WSDL SOAP Web Oracle9i JDeveloper WSDL Xmethods SalCentral WSDL Oracle9i Application Server UDDI WSDL Oracle9i JDeveloper WSDL Web 14
16 Web / 14:Web / 15: WSDL
16:Web Web / Java Web Web SOAP TravelSearchEJB EJB findflight Web Java SOAP Web Web SOAP Java 2 WSDL Java package ws; import oracle.soap.transport.http.oraclesoaphttpconnection; import java.net.url; import org.apache.soap.constants; import org.apache.soap.fault; import org.apache.soap.soapexception; import org.apache.soap.rpc.call; import org.apache.soap.rpc.parameter; import org.apache.soap.rpc.response; import java.util.vector; import java.util.properties; public class TravelSearchEJBStub { public String endpoint = "http://localhost:8888/soap/servlet/soaprouter"; private OracleSOAPHTTPConnection m_httpconnection = null; public TravelSearchEJBStub { m_httpconnection = new OracleSOAPHTTPConnection ; public String[] findflight String origin, String dest throws Exception { String[] returnval = null; URL endpointurl = new URL endpoint ; Call call = new Call ; call.setsoaptransport m_httpconnection ; call.settargetobjecturi "urn:ws.travelsearchejb" ; call.setmethodname "findflight" ; call.setencodingstyleuri Constants.NS_URI_SOAP_ENC ; Vector params = new Vector ; params.addelement new Parameter "origin", String.class, origin, null ; params.addelement new Parameter "dest", String.class, dest, null ; call.setparams params ; Response response = call.invoke endpointurl, "" ; if!response.generatedfault
{ Parameter result = response.getreturnvalue ; returnval = String[] result.getvalue ; else { Fault fault = response.getfault ; throw new SOAPException fault.getfaultcode, fault.getfaultstring ; return returnval; public void setmaintainsession boolean maintainsession { m_httpconnection.setmaintainsession maintainsession ; public boolean getmaintainsession { return m_httpconnection.getmaintainsession ; public void settransportproperties Properties props { m_httpconnection.setproperties props ; public Properties gettransportproperties { return m_httpconnection.getproperties ; 2:Oracle9i JDeveloper WSDL SOAP
Web 17 WSDL Oracle9i JDeveloper Web Oracle9i Application Server Web Oracle9i Application Server Web proxy_source Java TravelSearchEJB Web URL Java http://localhost:8888/travel-context-root/travelsearchejb?proxy_source 2 Oracle9i JDeveloper 17:SOAP TravelSearchEJB Web JavaServer Page Enterprise JavaBean 18 TravelSearchEJB Web JSP Oracle9i JDeveloper
18:Oracle9i JDeveloper Web JavaServer Page Web JavaServer Page 19 Web 2 1. 2. Web Enterprise JavaBean SOAP HTTP Web Enterprise JavaBean Web Enterprise JavaBean J2EE IDE
19:Web JavaServer Page Web 2 Trip Planning Enterprise Java Bean TravelSearchEJB Web Web Trip Costing Trip Costing Web Web 20 21 XMethods Web
20:Web Xmethods 21: WSDL
Web 1. 2. XMethods WSDL Web 22 23 Oracle9i JDeveloper Web / Web 22: WSDL URL 23:Web WSDL
TravelSearchEJB Web JavaServer Page J2EE 23 Web JavaServer Page 24 TravelSearchEJB Web Web JavaServer Page 24: Web Web JavaServer Page 25: Web
Web Web Oracle9i JDeveloper J2EE EJB Business Components for Java BC4J PL/SQL Web Business Components for Java BC4J Oracle J2EE J2EE / XML JSP Swing Enterprise JavaBeans BC4J Web Oracle PL/SQL Web PL/SQL Oracle9i JDeveloper PL/SQL PL/SQL Web Oracle9i JDeveloper Java PL/SQL JPublisher Java Oracle9i JDeveloper Web PL/SQL Web Oracle9i JDeveloper Web UML Web Java Web Web Oracle9i JDeveloper Java XML PL/SQL Web Web Oracle9i JDeveloper Web Web Java IDE 1 Oracle9i JDeveloper Web 2002 1 Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores, CA 94065 U.S.A : : +1.650.506.7000 : +1.650.506.7200 www.oracle.com Oracle Copyright 2000 Oracle Corporation All rights reserved.