Home
OpenLink Software Server 4.5 User's Manual
Contents
1. Virtuoso 4 5 Application and Integration Reviewers Guide 9 Copyright 2006 OpenLink Software Figure 5 Linking and Qualifying the Stored Procedures FLY virtuoso yy 2B logged in as dba I Log out CONDUC ag 1 Log Replication WebDAy amp HTTP XML ices Web Services NNTP Services Interactive SUL user Defined Types Backup External Linked Objects Connected pata sources Configure Data Sources Linking objects tom data source Dema_SOLSWR Local Catalog De PL Wrapper Requirements SOAP Execution Parameters Type Name SOAP Type IN El Leustamen 1D none RETORNE RETURN VALUE INTEGER Prone o CustOrdersDetait1 DE DEMO_SaLeva GustOrdersDetci_t 5 SOAP Execution SOL Execution O None Name SOAP Type _OrderD INTEGER _RETURM_VALUE INTEGER usiOrdersOrders 1 DE DEMO_SaLavR wirements SOAP Execution SOL Execution None Data Type SOAP Type NVARCHAR Prone INTEGER none A i LOND ICTOR logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP Web Services H ISQL _ DAV Browser virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Documentation Tutorials opentink Sofware Data Source All Data Sources Tables G virtuoso Web Site Object Name I Views Clear Version 04 00 2804 M
2. emo DBA BOOK VIEW _DETAILS ion Indexes O Triggers 0 Constraints 0 s Ifo o i 2001010000000 oao po po gop Baa Definition Inciexes a Triggers 4 Constraints 1 E views EJ Procedures user Defined Types T Al Name O Demo DBA AUDIO_CASSETTE 38 Drop Selected Figure 17 Schema Object BOOK_VIEW_DETAILS Definitions 1 virtuoso 5 PCONDUC TOR logged in as dba Log out Home System Admin Database Replication WebDAY amp HTTP XML Services Web Services NNTP Services P ISQL L DAV Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Show Columns Show SQL Edit Indexes Edit Triggers Poiche Column Name Type Precision Scale Nullable Indexed Tutorials ProductIO INTEGER 10 0 No opentink Software BookProductType INSTANCE 0 0 Yes virtuoso Web site irtuoso Wel Back to tables list Version 04 00 2804 Build May 31 2005 Copyright 1999 2005 OpenLink Software New types can be further derived producing sub types User defined types can include methods and constructors to create any potentially complicated system to house data as exactly required Virtuoso automatically handles the mapping between the SQL type system and hosted language native types Now that we have seen how to define types the examples below will show how they can be used to hosts a Java VM or C and allow manipulation of classes through the SQL
3. Under this option you can load as many modules as you want to load by selecting Add to List and then select Load all Step 4 Once you have added the object select Load Selected which will register the Point class object as a UDT shown below in Figure 21 Loading Modules and Figure 22 Loading Hosted Modules Figure 21 Loading Modules SU VIRTUOSO CONDUCTOR mera A Home System Admin Database Replication WebDAY amp HTTP XML Services Web Services NNTP Services SQL DAV Browser Schema Objects External Data Sources Interactive SQL User Defined Types Backup Virtuoso Start Menu Search be Dpeumentanon Loaded Modules Import Files Modules Grant Tutorials 9 j Selected Class from Module OpenLink Software N Point Point dll i i PERS Point all Browse Addtolist _Clear list Version 04 00 2804 Build May 31 2005 Load All Copyright 1999 2006 OpenLink Software Figure 22 Loading Hosted Modules SOND ICTOR 4 logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services WISQL DAV Browser Schema Objects External Data Sources Interactive SQL User Defined Types Backup Virtuoso Start Menu Search J Documentation Class Module Name Status Tutorials Point Point dll Loaded W opentink Software OK virtuoso Web Site Version 04 00 2804 Build May 31 2005 Copyright 1999 2008 OpenLink Software St
4. Virtuoso capabilities include handling of Disparate Databases amp Data Sources Web Service Composition and Business Process Integration The conceptual architecture diagram below highlights Virtuoso s key features Figure 2 Virtuoso Conceptual Architecture including Enterprise Data Integration Virtuoso Virtual Database Engine e Web Services Composition Web Services Platform Introduction to Process Integration Blog BPEL etc Figure 2 Virtuoso Conceptual Architecture CUSTOMERS 7 i SEMANTIC CONTENT WEB 2 0 ba gt DATABASES DATA SOURCES SQL XML OTHER 5 eure COMPOSITE SERVICES 5 Data Integration i 1 WEBLOGS amp WIKIS Universal wie ORIENTED APPS a Server Services gt Platform composiog gt a SERVICE EXISTING APPS ae ace ale EXECUTABLE WEB A i Q WEB2 0 VENDORS amp PARTNERS The sections throughout this guide are aimed at demonstrating Virtuoso s value proposition in these key areas The step by step examples will quickly introduce you to Virtuoso and show you many useful techniques and features The examples grouped by area include Enterprise Data Integration Virtuoso 4 5 Application and Integration Reviewers Guide Copyright 2006 OpenLink Software e Identifying disparate data for integration and linking the data into Virtuoso e Creating XML based documents or ODBC data sources for heterogeneous data Web Services Composition e Identi
5. user defined types Note 3 At install time you must select the runtime hosting option for Java and the CLR on Windows and Java and Mono CLR as the interfaces require Mono CLR and Java extension servers In addition All Java classes have to be in the CLASSPATH of the hosted Java VM 3 3 2 1 Runtime Hosting using C and Java objects to extend Virtuoso via User Defined Types 3 3 2 1 1 User Defined Types and CLR The examples in this section show hosting a distance calculation written C hosted by Virtuoso Inthe steps we will define a class point written in both Java and C which can be found in the bin directory under Virtuoso 4 5 which are automatically installed For example on Windows C Program Files OpenLink Virtuoso 4 5 bin Virtuoso 4 5 Application and Integration Reviewers Guide 17 Copyright 2006 OpenLink Software Figure 18 Directory of Point dlIl and Point class C Program Files OpenLink WWirtuoso 4 bin gt dir Point Volume in drive C has no label Volume Serial Number is 606C1 F 8E Directory of C Program Files OpenLinkWirtuoso 4 bin 65 19 2665 61 37 PM 457 Point class 057 1972005 61 37 PM 3 872 Point d1l 2 File lt s gt 3 529 bytes Dirts gt 44 721 111 646 bytes free C Program Files OpenLinkWirtuoso 4 bin gt Step 1 The first step is to create a piece of code or class in C Figure 111 shows the definition of the point class written in C Figure 19 C code Point cs using System S
6. Security Options Stored Procedures User Defined Types Saved Queries Available Procedures Published Procedures ATOM zj Reload DB DBA BACKUP_MAKE DB Demo_SOLSVR SalesByCategory_1 DB DBA BACKUP_SCHED_NAME DB DBA BACKUP_VIA_DBPUMP DB DBA BLOG2_ATTACHED_CHILD DB DBA BLOG2_ATTACHED_ROOT DB DBA BLOG2_CREATE_SID DB DBA BLOG2_GEMS_AUTH DB DBA BLOG2_GET_ACCESS DB DBA BLOG2_GET_USER_ACCESS DB DBA BLOG2_GET_USER_BY_SESSION DB DBA BLOG2_INCLUDE_CHILD DB DBA BLOG2_INCLUDE_ROOT DB DBA BLOG2_INSERT_MEDIA_MESSAGE DB DBA BLOG2_MAIN_PAGE_DATA Cancel Save Changes Copyright 1999 2005 OpenLink Software VIRTUOSO CONDUCTOR teal 0000 Default Web Site Logical Path Type Executes as Add new directory epeL SOAP BPEL L2 edit Delete cLRPointTest SOAP SOAP 2 edit G pelete SOAP INTEROP E edit G belete y 0 SOAP SOAP U edit G delete sepce SOAP MT E edit B pelete soap SOAP SOAP 2 edit pelete interop SOAP INTEROP edit G belete r3 Compound1 SOAP Compound L edit E delete r3 Compound2 SOAP Compound2 B edit G Delete r3 DocLit SOAP DocLit 2 edit Delete amp iramnrdare SOAP DocPars edit F nalete i 600 00 Default SSL Web Site Copyright 1999 2005 OpenLink Software You will be presented with a screen for selecting the procedures or XML templates For selecting the procedures you first have to select the appropriate catalogue that contains the procedure that you want to pu
7. Sign in to obtain edit access to different modules within the framework as well as view the restricted sections of the site register News and Features Q4 Sales Rise 200 Over Last Year e sales for the crucial fourth quarter of last year rose nearly 200 over the previous year despite a d more Quick Launch TBuySpy onlin lackluster holiday sales overall rea 2 ASP NET Site 2 GotDotNet com ASP NET on MSDN QuickStart Samples Upcoming Events s This Saturday usual secret time and place It s back The premier regional swap meet for spy paraphernalia of every description Shop early for some amazing bargins Dark Ops Sock Hop Saturday 8pm to Dark Ops Cafe Back by popular demand Practice your surveillance of the apposite sex and dance some too Great opportunity for a brush pass 3 3 3 2 2 ASMX Hosting This Week s Special The QLT2112 Document Transportation System is on special this week to clear an Purchasers of the P38 Escape Vehicle Air receive one free Top Movers Product Revenue Growth Category Millions Travel 60 Communications Deception Munitions Virtuoso can host ASMX files defining SOAP callable web services defined in any Net language The web service is deployed under Virtuoso simply by placing the ASMX file in either the DAV repository or a file system directory mapped to a Virtuoso web server virtual directory Virtuoso 4 5 Application and Integration Reviewers Guide C
8. Stored Procedures _Apply Build May 31 2005 External Linked Objects Connected Data Sources Configure Data Sources z Unlink selected Type Local name DSN Remote name DB Demo_SQLSVR CustOrderHist_1 Demo_SQLSVR Northwind dbo CustOrderHist 1 unlink DB Demo_ CustOrdersDetail_1 Jemo SVR Northwind dbo rdersDetail 1 P Unlink DB Demo_SQLSVR CustOrdersOrders_1 i Northwind dbo CustOrdersOrders 1 unlink DB Demo_ 2 Emplo les_by_Country_1 Ji al 2 Northwind dbo Employee Sales by Country unlink DB Demo_ i Ji SVR Northwind dbo SalesByCategory 1 unlink DB Demo_ ales e Demo_SOLSVR Northwind dbo Sales by Year 1 unlink DB Demo_ S en_Most_Expensive_Products_i Demo_SQLSVYR Northwind dbo Ten Most Expensive Products 1 P unlink qaqod0ca0 agaag Unlink selected Copyright 1999 2005 OpenLink Software Note 1 When linking in these procedures for each remote procedure you have the option to change how they will be referenced within Virtuoso These include changing the fields for Local Name Database and Schema Step 6 As shown in Figure 6 External Data Sources above for each procedure there are radio buttons for selecting the PL Wrapper Requirements This option is of particular importance for remote procedures capable of returning a result set Remote procedures can be linked using a Virtuoso PL wrapper meaning that Virtuoso procedure language code provides a mechanism for negotiating the result set T
9. type LPoint returns double precision external type D external name distance More Information For complete details on User Defined Types see e Virtuoso Documentation on User Defined Types e Virtuoso CLR Using C objects to extent Virtuoso via UDTs Tutorial e Virtuoso Java Using Java objects to extent Virtuoso via UDTs Tutorial Virtuoso 4 5 Application and Integration Reviewers Guide Copyright 2006 OpenLink Software 24 3 3 2 2 NET Assemblies 3 3 2 3 Scripting Languages When a page in PHP PERL or Python is in an executable directory in the web server space no special code or declaration is required as in the aforementioned Java or CLR examples These languages will be executed when requested There is however special Virtuoso SQL specific functions for accessing these languages from stored procedures The following examples include PERL and Python code snippets followed by their SQL invocation from Virtuoso Interactive SQL ISQL 3 3 2 3 1 Perl Example In Figure 140 the example shows direct PERL code execution from Virtuoso PL Figure 33 Executing PERL directly from Virtuoso PL select __hosting_http_handler pl print hello perl vector vector ti pl Figures 141 and 142 show Perl file execution from Virtuoso PL Figure 34 PERL Code test_print pl usr bin perl print hello perl from a file Figure 35 Virtuoso PL CODE select __hosting_http_han
10. www 03 org 2001 XNLSch tp www 03 org 2001 XMLSch vypes http www v3 org 2001 XMLSchema int lt Envelope gt Back to operations page Virtuoso Universal Server 04 00 2804 Copyright 1909 2005 OpenLink Software 3 3 2 1 2 User Defined Types and Java Classes The steps used to create a hosted module in Java are the same as the CLR However in order to access the Java class instances they have to be defined as Virtuoso types using CREATE TYPE and specifying LANGUAGE JAVA Figure 122 and 123 shows the definition of the Point class written in Java and the UDT definition in Virtuoso Figure 31 Java code Point java public class Point implements java io Serializable public double x 0 public double y 0 public Point double new x double new y x new x y new_y public double distance Point p return Math sqrt p x this x p x this x p y this y p y this y Virtuoso 4 5 Application and Integration Reviewers Guide 23 Copyright 2006 OpenLink Software Figure 32 Defining the Create Type in Virtuoso for Java create type Point language JAVA external name Point AS x double precision external name x external type D y double precision external name y external type D unrestricted CONSTRUCTOR METHOD Point pl double precision external type D p2 double precision external type D METHOD distance pl1 Point external
11. 2006 OpenLink Software Figure 4 Selecting the External Stored Procedures eSLYvIRTUOSO yrn n CONDUCTOR jogged in as dba Log ou Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services LH ISL DAV Browser virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Documentation Tutorials G openLink Software DSN Description Q virtuoso Web Site Demo_SQLSVR SQL Server as onanan Catalog Schema Name F Tables Apply _ Clear Build May 31 2005 Filter All An f I Views M Stored Procedures External Linked Objects Connected Data Sources Configure Data Sources Name Northwind dbo CustOrderHist 1 Northwind dbo CustOrdersDetail 1 Northwind dbo CustOrdersOrders 1 Northwind dbo Employee Sales by Country 1 Northwind dbo Sales by Year 1 Northwind dbo SalesByCategory 1 Northwind dbo Ten Most Expensive Products 1 All i m v m v m d v Cancel _Link Copyright 1999 2005 OpenLink Software Step 5 In Figure 5 Linking and Qualifying the Stored Procedures a new page listing the chosen procedures and their associated data type information is displayed On this form you can alter the data type mappings that Virtuoso will use both internally and for any future interactions with the SOAP server If you do not want to specify any special type information the details can be left as default
12. L VIRTUOSO Sanaa Virtuoso Universal Server 4 5 Application Integration Web Service Composition Reviewer s Guide OpenLink Software Published March 9 2006 2006 OpenLink Software All rights reserved OpenLink UDA Virtuoso registered trademarks or trademarks of OpenLink Software in the United States and or other countries The names of actual companies and products mentioned herein may be the trademarks of their respective owners Virtuoso 4 5 Application and Integration Reviewers Guide 1 Copyright 2006 OpenLink Software Table of Contents T SPROTAGCG T ETES 1 1 Objective s riisrisdirdscddaddddddidaddddddudddiddddd AN dAAARRAAAAANNNARNERAAARANNNARNAKRARAANKARRRRKRA 3 1 2 System Requirements sssssss555 5 55555555uuu uuu555uuunnnnnnnnn 3 1 3 Installation Renee e rer errr er Creer errr errr ere rr ere ererr ere rr creer err ere rr Trt rere errr reer errr rrr y 4 2 Virtuoso Universal SCrve r wissssccsecccecsensensenseacsenseesenseassessensenssessessesseessosses D 2 1 Introduction eee er Tre rer TCrCCTCTCCTeTTETCCTCLTCTCCLLTCLTTT errr rrr rrr errr rer roe cr 5 3 Web Services Platform iscsccsscesencenssessensenseasnsssenseeseeneassesseassessensessesssassass 7 3 1 What Is THIS 2 tai icccnnansacacnucnccn wun enedueieedeestneesesieeeesndieieesecnsedsuviiwaewwnenewaas 7 3 2 The Value Proposition ssssssss 5 s555uuu 505555uuuunnnnnnnnn 7 3 3 Exploiting Value Propositio
13. MO AUDIO_CASSETTE as show below in Figure 15 Create Table Statement using UDT Figure 15 Create Table Statement using UDT CREATE TABLE DEMO BOOK VIEW DETAILS ProductID integer NOT NULL BookProductType DEMO AUDIO_CASSETT Pl SLY virtuoso CONDUCTOR amp logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP Web Services NNTP Services iJ IsQL Schema Objects External Data Sources Interactive SQL User Defined Types Backup toad Seve SOL Builder Execute Show Syntax Clear CREATE TABLE DEMO BOOK VIEW_DETAILS Product ID ger NOT NULL BookProductType DEMO AUDIO_CASSETTE I WebDAV source I Show no more than 100 rows Execute Clear Copyright 1999 2005 OpenLink Software Step 4 Verify the table referencing the UDT by navigating to the Database TAB selecting Schema Objects and expanding the Demo database and selecting the Tables as show below in Figure 16 Demo Table BOOK_VIEW_DETAILS Select the details of the table by clicking on the Definitions as shown in Figure 17 Schema Object BOOK_VIEW_DETAILS Definitions Virtuoso 4 5 Application and Integration Reviewers Guide 16 Copyright 2006 OpenLink Software Figure 16 Demo Table BOOK_VIEW_DETAILS NLS virtuaso CONDUCTOR Create Table Create view e cedure Create User Defined Type Schema Object Type E BLoG E BPEL Ger oe E bemo Tables AILN
14. Net Hosting The default the installed demo instance includes hosting of the IBuySpy Portal which is an aspx based application as seen below in Figure 40 BuySpy Portal You can set this up through the tutorial or browse directly to this demonstration by typing the URL on your own local installation or on OpenLinks online demo http localhost 8890 PortalCSVS on Windows or http demo openlinksw com 8890 PortalCS on Linux Figure 40 BuySpy Portal ASP NET Portal Mozilla Firefox Elle Edit View Go Bookmarks Tools Help lt gt 80 Firefox Help Firefox Support Sj Plug in FAQ K Kingsley Idehen s Blog G Google fi ProgressTak com http oplusbench 1 usnet private 2122 PortalCSVS DesktopDefault aspx zl TWiki Main WebHome Oco fa ASP NET Portal L OpenLink Virtuoso Features Demons IBuySpy Portal Employee Info Product Info Discussions About the Portal Account Login Email Password T Remember Login sign in Welcome to the IBuySpy Portal TEY Welcome to the IBuySpy Portal the Intranet Home for IBuySpy s corporate employees This site serves as the hub application for IBuySpy s internal operations It provides online news event and sales information along with interactive discussion forums and employee contact information In a nutshell everything needed to maintain and run the fast growing IBuySpy commercial empire Feel free to browse the site and explore
15. blish For the XML Templates you simply select the template using the checkbox and provide an Export As name to choose the new SOAP name that a XML template for which it is referred Figure 10 Web Services Test Page Virtuoso 4 5 Application and Integration Reviewers Guide 12 Copyright 2006 OpenLink Software chose Web Services Test Page VSMX Basic view Enhanced view WSDL Location hifo oplusbench usnet private 2122 NorthwindDEMO services wsal Target Namespace hifo oplusbench usnet private 2122 NorthwindDEMO services wsal SOAP Operation Description SalesByCategory_1 Virtuoso Universal Server 04 00 2804 Copyright 1999 2005 OpenLink Software Figure 11 Selecting the Database containing the stored procedure ices Web Services Test Page VSMX Basic View Enhanced view WSDL Location hite opiusbench1 usnet private 2122 NorthwindDEMQ services wsdl Target Namespace hifa opiusbencht usnet private 2122 NorthwindDEMO services wsal SOAP Service Details service Northwind Demo Sales By Category ports Northwind Demo Sales By CategoryDocLiteralPort binding http oplusbench1 usnet private 2122 NorthwindDEMO services wsdl Northwind Demo Sales By CategoryDocL iteralBinding extensibility lt soap address ocation http oplusbench1 usnet private 2122 NorthwindDEMO gt binding Northwind Demo Sales By CategoryDocLiteralBinding type http oplusbench 1 usnet private 2122 NorthwindDEMO services wsdl Nort
16. der Sen WebDAV source Execute Show Syntax Clear CREATE TYPE DEMO AUDIO_CASSETTE AS AUDIO CASSETTE LONG VARCHAR 7 Version 04 00 2804 Build May 31 2005 Step 2 One the UDT has been defined verify the UDT by navigating to the Database TAB selecting Schema Objects and expanding the Demo database and selecting the User Defined Types as show below in Figure 14 Demo AUDIO_CASSETTE User Defined Type Virtuoso 4 5 Application and Integration Reviewers Guide 15 Copyright 2006 OpenLink Software Figure 14 Demo AUDIO_CASSETTE User Defined Type uw CONDUC TOR amp logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services H ISQL L DAV Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search __ Documentation Create Table Create View Create Procedure Create User Defined Type i Coe eae Y Schema mask Update Display Clear W virtuoso Web Site Schema Object Type E BLOG Version 04 00 2804 Build May 31 2005 L spel E CLR E DB Demo E Tables B views EJ Procedures User Defined Types F All Name C Demo DBA AUDIO_CASSETTE 3 Drop Selected Step 3 Once the UDT has been defined it can then be used in stored procedures tables or views For example in the create table below Instead of specifying BookProductType as the data type you can specify DE
17. dler pl test_print pl 3 3 2 3 2 Python Example In Figure143 the example shows direct python code execution from PL Figure 36 Executing Python directly from Virtuoso PL T select __hosting_http_handler py print hello python vector vector t1 py Figures 144 and 145 demonstrate Python file execution from Virtuoso PL Figure 37 Python Code test_print py usr bin python print hello python from a file Figure 38 Virtuoso PL Code select _ hosting http handler py test_print py Virtuoso 4 5 Application and Integration Reviewers Guide 25 Copyright 2006 OpenLink Software 3 3 2 4 Creating an Assembly for Net In Figure 39 Create Library we have a create assembly example with the same class used in the CLR examples for Net Figure 39 Create Library CREATE LIBRARY myPoint as temp _dll_stor Point dll WITH PERMISSION _SET UNRESTRICTED WITH AUTOREGISTER 3 3 2 5 Sandboxes and Security Hosted Net code can run in two modes Restricted and unrestricted 3 3 2 5 1 Restricted Mode In the restricted mode the default the code cannot take out of process connections access the file system or perform any other possibly dangerous operations 3 3 2 5 2 Unrestricted Mode In the unrestricted mode the Net code will run with the privileges of a Windows account associated to the SQL account that is invoking the code This defaults to the ope
18. e select the SOAP template Figure 7 Creating a Virtual Directory using the SOAP Template SU VIRTUOSO A S CONDUCTOR 4B logged in as dba Log out LH ISOL L DAV Browser Virtuoso Start Menu Search Documentation Tutorials J openLink Software J virtuoso Web Site Version 04 00 2804 Build May 31 2005 Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services SOAP Services WSDL Services BPEL Virtual Directory Information Authentication Options SOAP Options WS Security Options Stored Procedures User Defined Types Saved Queries Host Default Web Site Interface 0 0 0 0 Path NorthwindDEMO I XML RPC enabled SOAP User SOAP vj Reload Cancel Save Changes Copyright 1999 2008 OpenLink Software Step 4 In Figure 96 you are presented with the main configuration page for adding a Virtual Web Directory Particular options to note are Listener Details and SOAP Options Virtuoso 4 5 Application and Integration Reviewers Guide 11 Copyright 2006 OpenLink Software Figure 8 Adding a Virtual Web Directory to Publish the Service VIRTUO CONDUCTOR logged in as dba Log out sa Pome System Admin Database Replication WebDAV amp HTTP_ XML Services Web Services NNTP Services je SOAP Services WSDL Services BPEL _ Options for SOAP Virtual Directory Virtual Directory Information Authentication Options SOAP Options WS
19. em items 6045x iene lt item gt lt item gt Mamilaku lt item lt item gt 4196 lt item gt af item citem gt HuNuCa Nus Neugat Creme lt item gt Aatems1236 lt tem gt s aitem gt ci remsPawLowacs item civemsazac tren lt item gt Sirem m gt Sehogsi Schokelade lt ibem gt Sitem gt 2054 lt item lt ficem gt lt item gt Seettish Longhreads lt item items 3263 lt item gt More Information Virtuoso 4 5 Application and Integration Reviewers Guide Copyright 2006 OpenLink Software 13 For more information regarding Publishing 3 Party stored procedures as Web Services see e Virtuoso Publishing 3rd Party Stored Procedures as Web Services Documentation e Virtuoso Publishing 3rd Party Stored Procedures as SOAP Services Tutorial Virtuoso 4 5 Application and Integration Reviewers Guide Copyright 2006 OpenLink Software 14 3 3 1 3 Exercising Published Services 3 3 2 Web Services Composition from other Application Logic Sources Business logic written in Java or any of the Microsoft Net languages can be hosted inside the Virtuoso process This business logic can access Virtuoso s database and virtual database capabilities directly via an in process client This eliminates the gap between the application and database tiers in a three tier architecture If structures of the hosted language are to be transferred they will first be mapped to a SQL type which then declares the prec
20. ep 5 In Figure 23 Applying Module Grants we add the appropriate Grants to the class for execution and access In case will are applying the least Virtuoso 4 5 Application and Integration Reviewers Guide 19 Copyright 2006 OpenLink Software restrictive by granting the module public access The Security of a UDT is maintained through normal SQL GRANT and REVOKE statements via a simple extension You can define the level of access to both native and externally hosted UDTs Step 6 Once grants are applied you can view the existing grants for all loaded modules as shown in Figure 24 Existing Grants These grants can be removed at anytime and redefined using this screen This also can be grants can also be applied via the SQL statement GRANT REVOKE EXECUTE on lt user_defined_type gt Example Grant Public on CLR Point Figure 23 Applying Module Grants aL VIRTUOSO x S 7 CONDUC TOR logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services SQL L DAY Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Documentation Loaded Modules Import Files Modules Grant Loaded Modules Module Name Grant To DB DBA Point public Tutorials opentink Software virtuoso Web Site Version 04 00 2804 Build May 31 2005 Existing Grants Module Name Type Granted To There are no items Co
21. erializable public class Point public Double x public Double y public Point_10 xX 0 y 0 public Point_10 Double new_x Double new_y xX new x y new y public Double distance Point p Double ret ret Math Sqrt p x this x p x this x p y this y p y this y return ret Step 2 The next step is to register the Point Class with Virtuoso as a UDT by first selecting the menu tree of the Conductor and select Runtime Hosting Then select the Import Files option as show below in Figure 20 Import Files Virtuoso 4 5 Application and Integration Reviewers Guide 18 Copyright 2006 OpenLink Software Figure 20 Import Files aS L A VIRTUOSO 3 J ONDUCTOR logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP XML Services Web Services NNTP Services WISQL _Jpav Browser Schema Objects External Data Sources Interactive SQL User Defined Types Backup Virtuoso Start Menu Search Documentation Tutorials Vopentink Software virtuoso Web sit eh Pointl Browse _Addto list Clear list Version 04 00 2804 Build May 31 2005 Loaded Modules Import Files Modules Grant Selected Class from Module The list is empty Copyright 1999 2005 OpenLink Software Step 3 Type in the location and file name for the class In this example we type in C Program Files OpenLink Virtuoso 4 5 bin Point dll Note 4
22. es OpenLink Software hopes you find this guide informative while you learn what Virtuoso has to offer for your enterprise For More information on Virtuoso or OpenLink Software contact us at Sales sales openlinksw com General general information openlinksw com Technical Support technical support openlinksw com Or visit our web sites OpenLink Software http www openlinksw com Virtuoso http virtuoso openlinksw com 1 2 System Requirements The Virtuoso Universal Server installation contains the Virtuoso VDBMS server administrator web files and Virtuoso client connectivity Software e Virtuoso Universal Server 4 5 e Virtuoso Conductor VAD 1 00 3051 Virtuoso is available on a number of hardware platforms Listed below are some of the operating system ports currently available Hardware e Microsoft Windows 2000 XP 32 and 64 bit platforms Server 2003 e Linux Intel and AMD64 glibc2 1 glibc2 2 glibc2 3 compatible e Linux IBM pSeries 64 bit e Mac OS X 10 2 Jaguar amp 10 3 Panther e Solaris 2 8 2 9 Sparc e AIX 4 3 x 5 0 x 5 1 x 32 and 64 bit Power PC Operating Systems and Browsers Virtuoso 4 5 Application and Integration Reviewers Guide Copyright 2006 OpenLink Software JIE 6 0 Mozilla Firefox Opera etc 1 3 Installation Download the Virtuoso 4 5 installer from OpenLink Software Virtuoso Download area at http oplweb openlinksw com 8080 download Install b
23. fying monolithic applications from which services are to be decoupled composing and linking their functionality into Virtuoso e Creating virtual directories as endpoints for exposing functionality for web services clients Process Integration e See the OpenLink BPEL Process Manager Reviewers Guide for more information Virtuoso 4 5 Application and Integration Reviewers Guide 6 Copyright 2006 OpenLink Software 3 Web Services Platform 3 1 What Is This As a Web Services Platform Virtuoso includes built in support for WSDL SOAP UDDI WS Security and several other Web Services Protocols It enables the creation and composition of Web Services from existing application logic pools hosted within monolithic mission critical applications Thus the process of creating a SOAP and WSDL compliant Web Service from existing application logic resolves to the following steps Identify the SQL Stored Procedures Java Classes NET Assemblies or C C modules implementing the functionality in question Use the HTML UI to trigger the generation of a WSDL file and SOAP invocation wrappers for the application logic Use Virtuoso s HTTP Server functionality to create a Virtual Directory that acts as an execution endpoint for your Web Service Test the usability of the new Web Service by interacting directly with an HTML based Web Service verification page Proceed to using your newly created service with a Web Service aware develop
24. he available options are e Soap Execution Generates a PL wrapper that can be published to Web Services e SQL Execution Generates a PL Wrapper that is more suitable for general SQL use e None Does not generate and PL Wrapper code and simply links the procedure by reference 3 3 1 2 Publishing SQL Stored Procedures as Web Services Before any procedures native or linked in exposed as SOAP Web Service a location in HTTP space must be defined As mentioned in the previous section the Virtuoso 4 5 Application and Integration Reviewers Guide 10 Copyright 2006 OpenLink Software WebDAV HTTP Virtual Directories page lets you make a new URL Mappings The HTTP Virtual Directories page should contain a table with a row for Default Web Site Click on the Edit URL Mappings link for the Default Web Site line to begin defining a new SOAP mapping Step 7 Step 8 To create a Virtual Directory with a SOAP mapping you first must select the Soap Service HTTP endpoints option under the Web Services Tab in the Conductor Expand the folder on the right and click the Add New Directory button Select the options for the SOAP Virtual Directory and Click the NEXT button Once selected as seen in Figure 7 Creating a Virtual Directory using the SOAP Template below a list of existing mappings is shown Press the ADD VIRTUAL DIRECTORY button to create a new mapping A list of templates is then displayed However instead of selecting Fil
25. hwind Demo Sales By CategoryDocliteralPortlype extensibility lt soap binding style document transport http schemas xmlsoap org soap http gt operations SalesByCategory_1 extensibility lt scap operation soapAction hitp openlinksw com irtuoso soap schema SalesByCategory_1 style document gt input lt soap body use literal gt output lt soap body use literal gt used by Service Northwind Demo Sales By Category in Port Northwind Demo Sales By CategoryDocLiteralPort porttype Northwi ales By Catego operations input http oplusbench1 usnet private 2122 NorthwindDEMO services wsdl SalesByCategory 1Request output http oplusbench1 usnet private 2122 NorthwindDEMO services wsdl SalesByCategory_1Response used by binding Northwind Demo Sales By CategoryDocLiteralBinding message SalesByCategory_1Request parts parameters element services wsdl SalesByCategory 1 used by PortType Northwind Demo Sales By CategoryDocLiteralPortType in Operation SalesByCategory_1 Virtuozo Universal Server 04 00 2804 Copyright 1999 2005 OpenLink Software Close Web Services Test Page VSMX Tow SSSR Tree view Source view SOAP Operation SalesByCatecon_1 int URL hte ooWshenchT usnet private 27 22 Northwind DEMO put parameters Ecay xmi tP Salesbycategory 1Response LCa lEeturn gt cirem gt Cnecotade lt irem gt SitemsaTe trem ef tcem gt lt item Siecm gt Gumbae Gummibacohen lt it
26. ise SOAP types for the members User Defined Types To Virtuoso SQL instances of hosted classes appear just as native SQL user defined type instances or types UDTs Their methods can be called their members can be accessed and the instances may be stored into columns of relational tables These user definable datatypes can be based on any hosted language or class and can be used to define database table columns The following code fragment shows how to define a SQL user defined type which shows the basic syntax used for the CREATE TYPE Refer to the User Defined Types and Create Type Syntax CREATE TYPE in the Virtuoso Guide for complete details on syntax Step 1 Using ISQL as shown in Figure 13 SQL Create Type Syntax Type in the following syntax for the User Defined Type and click the Execute button Note 2 By default if you do not specify the language the create type automatically defaults to SQL Figure 13 SQL Create Type Syntax CREATE TYPE DEMO AUDIO CASSETTE AS AUDIO CASSETTE LONG VARCHAR SLY virtuoso lt CONDUCTOR amp logged in as dba Log out Home System Admin Database Replication WebDAV amp HTTP XMLS s NNTP Services SPISQL L DAY Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search __ Documentation Tutorials J opentink Software virtuoso Web Site ript toad Seve SOL Buil
27. ment tool environment or service Register your newly created service with Virtuoso s in built UDDI Server and then advertise your service internally or externally to other service consumers Virtuoso facilitates the creation of SOAP compliant Web Services from existing or legacy monolithic applications without locking you into a host operating system programming language environment or database engine It enables you to perform the prerequisite step of creating and or composing Web Services as part of your effort to cost effectively exploit emerging application architecture principles such as Service Oriented and Event Driven Architectures 3 2 The Value Proposition Service Composition by exposure of existing time tested application logic for invocation using Web Services protocols without any code re writes Code format support includes SQL Stored Procedures NET assemblies Java Classes C C modules etc Service Invocation Endpoints via HTTP WebDAV based virtual directory and multi homing functionality that provides endpoints for SOAP WS Security WSDL and UDDI compliant interactions with composite services Virtuoso 4 5 Application and Integration Reviewers Guide 7 Copyright 2006 OpenLink Software 3 3 Exploiting Value Proposition 3 3 1 Web Service Composition from SQL Stored Procedures 3 3 1 1 Linking Attaching External SQL Stored Procedures The following section includes steps for linking in external stored
28. n s ssssssss555 8 3 3 1 Web Service Composition from SQL Stored Procedures cccceeceeeee seen eeeeeaes 8 3 3 2 Web Services Composition from other Application Logic Sources 00085 15 3 3 3 Web Service DeployMen cccccccceeeceeseeeeeeeeseeee ees eeeeeesseesseeaseegeeegnennneas 26 MAY V0 052 1 3 b EER AIEEE EEEa REAPER ERIN KEARE RAA AAAA AEREA MRRREREN KERERE REFEREE REEERE ORR EOE 4 1 Demo and Northwind Database ccccscccssescceseeceesnneeeseneeessneeeeanenseans 28 4 2 Industry Standards Support sceeceeeeeeee eee eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeneaee 28 4 3 Related LINKS bi ccciisiccccicdccecdcensedcdcvevccccevdccsevscdssnvecceevccdecrssdsensecnrmrsnene 28 Virtuoso 4 5 Application and Integration Reviewers Guide 2 Copyright 2006 OpenLink Software 1 Preface 1 1 Objective Thank you for taking the time to evaluate OpenLinks Virtuoso Universal Server 4 5 This guide introduces the Virtuoso 4 5 Server as well as Virtuoso s new administration and configuration tool the Virtuoso Conductor This guide takes you through Virtuoso covering virtual and federated database publishing and utilizing web services XML storage processing and querying business process management and more We illustrate these aspects of the product with sample code and Queries against the Virtuoso Demo database as well as links to documentation tutorials and other key resourc
29. opyright 2006 OpenLink Software 27 4 Appendix 4 1 Demo and Northwind Database A number of the examples in this document reference the Virtuoso demo database which is derived from Microsoft s Northwind database ships with Virtuoso 4 5 In addition where indicated other examples specifically use the Northwind database This database can be obtained from Microsoft at http www microsoft com downloads details aspx FamilyID 06616212 0356 46a0 8da2 eebc53a68034 amp displaylang en 4 2 Industry Standards Support Runtimes amp Frameworks Microsoft NET Mono J2EE Web Services SOAP UDDI WSDL WS Security WS Routing WS Reliable Messaging WS Policy WS Trust BPEL4WS XML XPath XQuery XSL T XML Schema Web amp Internet WebDAV HTTP SMTP LDAP POP3 SQL Data Access SQL 200n SQLX ODBC JDBC ADO NET and OLE DB 4 3 Related Links e Virtuoso On line Tutorials and Demonstrations http demo openlinksw com tutorial e Virutoso Blog http www openlinksw com weblogs virtuoso e Documentation http docs openlinksw com virtuoso index html e For additional information about Virtuoso see the OpenLink Virtuoso Product Web site The resources available on this site include links to technical articles and white papers downloads pricing documentation animated demonstrations and FAQs Virtuoso 4 5 Application and Integration Reviewers Guide 28 Copyright 2006 OpenLink Software
30. oth default and demo databases by following the instructions provided by the installer At the end of the installation process the Virtuoso server will be installed with both default and demo databases On Windows the Virtuoso start menu will appear which provides menu options for the Conductor Web Applications the 3 5 Classic Administration tool and links to other resources as shown in Figure 1 Virtuoso Start Menu Figure 1 Virtuoso Start Menu VIRTUOSO An LETI ESB C Product Documentation OpenLink Virtuoso is a next generation Universal Server that facilitates the development and deployment of a new generation of Help Tutorials Enterprise wide Internet Intranet and Extranet based solutions transcending prevalent enterprise challenge areas such as Disparate virtuoso Blog Databases and Data Sources Web Serice Composition and Business Process Management Using Other OpSys Hardware A Technical Support Virtuoso Universal Sener 04 00 2800 Copyright 1999 2005 OpenLink Software Virtuoso 4 5 Application and Integration Reviewers Guide 4 Copyright 2006 OpenLink Software 2 Virtuoso Universal Server 2 1 Introduction This reviewer s guide presents Virtuoso 4 5 the latest version of OpenLink Software s next generation Universal Server Platform Virtuoso facilitates the development and deployment of a new generation of Enterprise wide Internet Intranet and Extranet based solutions
31. procedures from an ODBC Datasource The steps in the example below uses a connected datasource called Demo_SQLSVR that maps to a Microsoft SQL Server database containing the Northwind schema Step 1 From the Conductor navigate to the Database Tab select the External Datasources sub tab and then the Connected Data Sources tab Select the Link objects link under the Actions column as shown below in Figure 3 External Procedures Management Figure 3 External Procedures Management SLO VIRTUOSO S 5 CONDUC TOR logged in as dba Log out Home System Admin Database Replication WebDAY amp HTTP XML Services Web Services NNTP Services SQL DAV Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Documentation Tutorials 9 OpenLink Software virtuoso Web Site External Linked Objects Connected Data Sources Configure Data Sources DSN Description Access Credentials Demo_SQLSVR SQL Server Edit Version 04 00 2804 Build May 31 2005 x _Add New Copyright 1999 2005 OpenLink Software Step 4 As seen in Figure 4 Selecting the External Stored Procedures below when the page returns a list is displayed of the available remote procedures You can link any of the listed procedures into Virtuoso by selecting them from the list and pressing the Link Selected button Virtuoso 4 5 Application and Integration Reviewers Guide Copyright
32. pyright 1909 2005 OpenLink Software Step 8 Once the distance stored procedure has been created we then publish the procedure as a web service using the method previously shown in the section Publishing SQL Stored Procedures as Web Services Step 9 Using the Virtuoso generated vsmx page a SOAP Service can be invoked for the procedure for testing as seen Figure 29 Testing CLR UDT and distance stored procedure and Figure 30 Testing the SOAP Operation Distance Virtuoso 4 5 Application and Integration Reviewers Guide 22 Copyright 2006 OpenLink Software Figure 29 Testing CLR UDT and distance stored procedure Close Web Services Test Page VSMX Basic view Enhanced view WSDL Location hffo opiusbench usnet private 2722 CLRPointTesi services wsdl Target Namespace hito oplusbench usnet private 2122 CLRPointTest services wsdl SOAP Operation Description distance SalesByCategory_1 Virtuoso Universal Server 04 00 2804 Copyright 1999 2005 OpenLink Software Figure 30 Testing the SOAP Operation Distance Ja Web Services Test Page VSMX Tree view Source vie We SOAP Operation distance Endpoint URL hito oplusbench usnet private 2722 CLRPointTest Enter input parameters distance x1 int 3 yt Gint 4 x2 int 2 y2 int 1 Invoke Preview Request lt Envelope xmlns hemas xmlsoap org soap envelope gt gt sal gt type http uuw 03 org 2001 XMLSchema tp
33. pyright 1999 2006 OpenLink Software Figure 24 Existing Grants a SLO VIRTUOSO H gt CONDUCTOR Blogged in as dba Log out Home System Admin Database Replication WebDAY amp HTTP XML Services Web Services NNTP Services Ww ISOL L DAV Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search __ Documentation Loaded Modules Import Files Modules Grant Tutorials Loaded Modules Module Name Type Grant To There are no items Wopentink Software Virtuoso Web Site Version 04 00 2804 Sunes Existing Grants Module Name Granted To Action DB DBA Point public Remove Copyright 1999 2008 OpenLink Software The equivalent Virtuoso Procedure Language statement for defining the classes with the import function call is shown below in Figure 25 SQL Equivalent Create Type in Virtuoso for CLR Figure 25 SQL Equivalent Create Type in Virtuoso for CLR create type Point language CLR external name Point Point AS x double precision external name x external type System Double y double precision external name y external type System Double unrestricted CONSTRUCTOR METHOD Point new_x double precision external type System Double Virtuoso 4 5 Application and Integration Reviewers Guide 20 Copyright 2006 OpenLink Software new_y double precision external type System Double METHOD distance p Poin
34. rating system account on behalf of which the Virtuoso server is running With Java the code may be confined into a Java sandbox as Java applets in browsers run or the code can run with the privileges of the OS account on which the Virtuoso server is running With both Java and Net the security setting is specified when importing the classes into Virtuoso 3 3 3 Web Service Deployment 3 3 3 1 Virtuoso Hosted Services 3 3 3 2 3 Party Web Services e g asmx based services from Visual Studio Virtuoso provides the ability to host Microsoft Net web services asmx files without any programming By inserting an asmx file in an executable virtual directory in either WebDAV or the file system will make its web services accessible to clients and will publish a WSDL file describing them The mechanism used for exposing these files is similar to Virtuoso s ASP Net hosting This makes Virtuoso a viable alternative to Microsoft s IIS for asmx hosting Additionally asmx services can be hosted on Unix platforms through Virtuoso s integration of the Mono CLR run time providing alterative options for platform deployment for applications More Information For complete details on setting up an environment to experiment with hosting and Writing ASP Net Web Applications see e Virtuoso Web Application Development Documentation Virtuoso 4 5 Application and Integration Reviewers Guide 26 Copyright 2006 OpenLink Software 3 3 3 2 1 ASP
35. t external type Point returns double precision external type System Double external name distance As seen in Figure 26 Viewing Hosted Module loaded Hosted Modules can be viewed at any time via the Administration Use Interface Figure 26 Viewing Hosted Module VIRTUOSO D CONDUCTORA User Defined Types Loaded Modules Import Files Modules Grant DB DBA Point Unload Selected Module file Browse Examine Virtuoso Universal Server 04 00 2802 Copyright 1999 2005 OpenLink Software As show below in Figure 27 User Defined Types a list of user defined types can be viewed by selecting the User Defined Types for the schema under the Database option in the Conductor Figure 27 User Defined Types VIRTUOSO Schema Objects Create Table Create View Create Procedure Create User Defined Type Y Schema mask Update Display Schema Objects Management T a C Sehema bjeet Type E E BPEL op Tables views J Procedures User Defined Types F alt Name im DB DBA POLICY_STRUCT IDB DBA Point DB DBA SOAPStruct DB DBA SOAPStructF ault IDB DBA SOAP_CLIENT_REQ IDB DBA WSA_CLI DB DBA XMLType DB DBA echoMultipleFaults1 Request DB DBA echoMultipleF aults2Request IDB DBA wa_blog2 E E O E O E O a SS togim iu fim fm fm Am fim fa fia first previous next Last Step 7 To test this UDT we next define a stored procedure called distance which can be exec
36. uted via ISQL The distance stored procedure uses a C function Virtuoso 4 5 Application and Integration Reviewers Guide 21 Copyright 2006 OpenLink Software member method to calculate the distance between points Note that Point class is computing the distance between two arbitrary points and the arbitrary values 1 amp 2 as input parameters for the Stored Procedure distance whose definition is show below in Figure 28 Distance Stored Procedure Figure 28 Distance Stored Procedure CREATE procedure clr distance in xl integer in yl integer in x2 integer in y2 integer returns float return new DB DBA Point xl yl distance new DB DBA Point x2 y2 SLY virtuoso ry m CONDUCTOR jogged in as dba Log out Home System Admin Database Replication WebDAY amp HTTP XML Services Web Services NNTP Services iF ISQL _ DAV Browser Virtuoso Start Menu Schema Objects External Data Sources Interactive SQL User Defined Types Backup Search Documentation Tutorials tJ opentink Software GJ virtuoso Web Site Basic Advanced Server side script Browse _Load Save SQLBuilder I WebDAV source Execute _Show Syntax _ Clear procedure clr distance in x1 integer in yl integer in x2 integer in y2 integer s float Version 04 00 2804 Build May 31 2005 return new DB DBA Point x1 y1 distance new DB DBA Point x2 y2 Show no more than 100 rows Execute Clear Co
Download Pdf Manuals
Related Search
Related Contents
Philips PET1031/93 User's Manual 取扱説明書 - Psn MANUAL DE INSTRUÇÕES Séries IR-44/46/MSH-32, HP/HPW ダウンロード(PDF 0.4MB) Philips Coffee collector CRP107/01 取扱説明書 - ELECOM Pilot IR Universel: NOTICE D`EMPLOI Art. 940 Fencing Apparatus – 07 Benutzerhandbuch Copyright © All rights reserved.
Failed to retrieve file