You are on page 1of 65

Handson Labs

Author Pablo Szuster


(pszuster@rehdat.com)

Version: 1

Last May 11th 2016


Revision

JDV 6.2
Version:

Index

RedHatJBossDataVirtualizationIntroduction
Lab1CreateaTeiidprojectandImportDataSource
ImportingMetadatafromtheProductDatabase
ImportMetadatafromtheuscustomersDB
ImportMetadatafromtheeucustomersDB
ImportMetadatafromaflatfile
Lab2CreateaVirtualBaseLayer
Createavirtualbaselayer:US_Customers_VBL
CreatetheEU_Customers_VBLandProducts_VBLModels
Lab3CreateanEnterpriseDataLayer
ImporttheDataDictionarySchema
CreatetheEU_Customers_EDLEnterpriseDataLayer
CreatetheUS_Customers_EDLEnterpriseDataLayer
Lab4CreateaFederatedDataLayer
Lab5CreateaWebService
Lab6VirtualDatabase(VDB)Deployment
CreatedatasourcesontheJBossDataVirtualizationserver
Lab7ConsumingWebServicesasDataSources
CreaterelationalmodelfromSOAPwebservice
CreaterelationalmodelfromRESTservice
Lab8OData
Howtoquerythedata
Lab9DashboardBuilder
FinancialsDashboardDemo


JBossFuseWorkshop Page1
RedHatJBossDataVirtualizationIntroduction
RedHatJBossDataVirtualizationisaleandataintegrationsolutionthatprovideseasy,
realtime,andunifieddataaccessacrossdisparatesourcestomultipleapplicationsandusers.
JBossDataVirtualizationmakesdataspreadacrossphysicallydistinctsystemssuchas
multipledatabases,XMLfiles,andevenHadoopsystemsappearasasetoftablesinalocal
database.Thiscomprehensiveplatformenablesagiledataprovisioningbyprovidingthe
followingfunctions:

Connect :Accessdatafrommultipleheterogeneousdatasourceswithdifferentaccess
methods
andstoragemodels.

Compose :Easilycreatereusable,businessfriendlydatamodelsandvirtualunifiedviewsby
combiningandtransformingdatafrommultiplesources.

Consume :Makeintegrateddataavailableondemandforconsumptionbyexternalapps
through
openstandardsinterfaces.

JBossDataVirtualizationsoftwareimplementsallthreestepsinternally,hidingallthe
complexities
ofthetruelocationofthedataorthemechanismsrequiredtoaccessormergeit,thusmakingit
veryeasyfordevelopersanduserstoworkwithdata.

DELIVERKEYI.T.INITIATIVESWITHAGILITY

ThesimplicityofferedbyJBossDataVirtualizationenablesuserstoacquireactionable,unified
informationwhentheywant,inthewaytheywant,atthespeedtheirbusinessesneed.This
leadsto
enlightenedbusinessexecutionandeasyadaptationtochangingbusinessdemands.Combined
witheaseofdevelopment,JBossDataVirtualizationsupportsarangeofITprojectsand
initiatives.
Selfservicebusinessintelligence(BI):Thevirtual,reusabledatamodelprovidesa
businessfriendly
representationofdata,allowingtheusertointeractwithdatawithouthavingtoknowthe
complexitiesofthedatabaseorwherethedataisstored,andallowingmultipleBItoolsto
acquiredatafromacentralizeddatalayer.

Unified360view :Thevirtualdatamodeldeliversacompleteviewofmasterandtransactional
datainrealtime.Thevirtualdatalayerservesasaunified,enterprisewideviewofbusiness
informationthatimprovesausersabilitytounderstandanduseenterprisedata.

Agileserviceorientedarchitecture(SOA)dataservices :Adatavirtualizationlayerdelivers
the
dataserviceslayertoSOAapplications.JBossDataVirtualizationspeedsboththecreationof

JBossFuseWorkshop Page2
virtualdatastoreswithouttheneedtotouchunderlyingsourcesandthecreationofdata
servicesthatencapsulatethedataaccesslogic.Datavirtualizationalsoallowsmultiplebusiness
servicesto
acquiredatafromacentralizeddatalayerandprovidesloosecouplingbetweenbusiness
services
andphysicaldatasources.

Improvedinformationcontrol :Datavirtualizationlayersprovidedatafirewallfunctionality.
JBoss
DataVirtualizationimprovesdataqualityviacentralizedaccesscontrol,robustsecurity
infrastructure,andreductioninphysicalcopiesofdata,thusreducingrisk.Themetadata
repositorycatalogsenterprisedatastoresandtherelationshipsbetweenthedatainvarious
datastores,enablingtransparencyandvisibility.

Bigdataandclouddataintegration: Datavirtualizationprovidesarapidvirtualintegration
approachthatdoesntrequirereplicationofalreadybigdatasources.Manyorganizationsare
adoptingcloudcomputingwhereeachnewcloudsourcemustbeintegratedwiththeexistingIT
environment.Datavirtualizationsolvesthisproblem,allowingenterprisestomaintaina
completeviewofinternalandexternalinformationwhiletakingadvantageofattractivecloud
economics.

TRANSFORMINTOENLIGHTENEDBUSINESS

RedHatJBossDataVirtualizationisamusthavefororganizationsseeking:

Profitabilitygrowthandriskreduction .JBossDataVirtualizationdeliversunifiedandtimely
informationtohelpyourorganizationincreaserevenue,reducecosts,managebusinessrisk,
and
reducecompliancepenalties.
Agilityandproductivityboosts. Robustdesignanddevelopmentenvironmentsletyou
respond
fastertochangeandimproveyourstaffseffectivenessandefficiencyandrealizefastertime
tovalue.
OptimizationofexistingITinvestments. Datavirtualizationimprovesutilizationofexisting
server
andstorageinvestmentswhilereducingunnecessarydatareplicationandthecostsof
duplication
andassociatedinfrastructuremanagement.

KEYCAPABILITIESANDFEATURES

MODELDRIVENDEVELOPMENT
JBossDataVirtualizationincludesTeiidDesigner,anEclipsebasedgraphicaltool,which
models,
analyzes,integrates,andtestsmultipledatasourcestoproducerelational,XML,andweb


JBossFuseWorkshop Page3
service
viewsthatshowbusinessdatawithoutprogramming.Youcanmapfromdatasourcestotarget
formatsusingavisualtool,aswellasresolvesemanticdifferences,createvirtualdata
structuresat
aphysicalorlogicallevel,andusedeclarativeinterfacesthatarecompatiblewithandoptimized
for
yourapplications.

VIRTUALDATABASEASOPENSEMANTICMODEL
Thevirtualdatabaseisthesemanticlayerthatresidesbetweenanorganizationsphysicaldata
sourcesandtheuseritsaunifiedbusinessrepresentationofdistributeddatasources.Itallows
theusertointeractwithdatawithlimitedknowledgeaboutit.Thevirtualdatabaseiscreated
using
familiarterminologytodescribethebusinessenvironmentandallowstheusertoretrieveexactly
thenecessarydata.Thisvirtualdatabaseisaccessiblethroughstandardsbasedprovisioning
mechanismslikeSQLorwebservices,toanybusinessintelligencetoolorapplication.

CENTRALIZEDDATASECURITY
JBossDataVirtualizationgivesyouthepowertomanageandmonitordataservicesinasingle
unifiedenvironmentandenforceandmanagepoliciesandrolesacrossfederateddataforall
data
services.Youcanconfigurepoliciesfordatasecurity,privacy,columnleveldatamasking,and
datasanitizationofsensitivefieldsbasedonuserroles.Inadditiontousingthesecurity
capabilities
ofRedHatJBossEnterpriseApplicationPlatform,thesoftwaresupportswebservicessecurity
andfinegrainedaccesscontrolforSQLdataserviceandvirtualtable.Inadditionto
columnlevel
security,yougetrowlevelsecurityatthevirtualizationlayer,whichisindependentofdata
sources.
TransportandpasswordencryptionareavailablethroughSSLsupport.

SERVICEENABLEDDATAFORSOA
Adataserviceapproachhidesthecomplexityofdiversedatasourcesfromtheapplications,
enablestheisolationofdataorientedlogicinadatalayerthatisindependentofapplications,
andrendersthecostlyworkofdatatransformationandintegrationmuchmorevaluabletothe
organizationbymakingitmorevisible,reusable,andmaintainable.YourITteamcanbuild
reusablelogicaldataobjectsbasedonbusinessentities(e.g.,CUSTOMER,PRODUCT,and
ORDER)andinsulateapplicationsfromchangesindatasourceswithamodeldriven,
standardsbaseddataabstractionlayer.

PERFORMANCEOPTIMIZATION
Advancecaching:Supportofseveralcachingmodesincludesmaterializedviews,resultset
caching,andcodetablecachingthatprovidedramaticperformanceimprovement.Configurable
timetolive,memorypreferences,andupdatabilityoptionsareavailablefordatacaching.


JBossFuseWorkshop Page4
Queryoptimization:Intelligentandautomatedtechniques(e.g.,costandrulebasedquery
optimizer
usinginformationfromsourceintrospection,querycapabilities,andconstraints)include
pushdownqueries,dependentjoins,projectionminimization,partitionedawareunions,andcopy
criteriatooptimizedatasourcesjoinprocessing,andsupportforhighperformancesubqueries.
Comprehensivequerytracesupportwithmanualplanoverrideofautomaticstrategyselections
for
optimizedquery.

METADATAREPOSITORYANDGOVERNANCE
TheOASISSOARepositoryArtifactModelandProtocol(SRAMP)repositorydefinesa
common
modelforrepositoriesandaninteractionprotocoltofacilitatedatasharinganduseofcommon
tools.Themetadatarepositorycatalogsenterprisedatasourcesandtherelationshipsbetween
the
datainvariousdatastores,providingcompletetransparencyandvisibility.Therepository
supports
Atom/RESTbasedclientinterfaceandXPath2basedquerylanguageandintegrationwith
Maven.


JBossFuseWorkshop Page5
Lab1CreateaTeiidprojectandImportData
Source

InthislabyouwillcreateanewTeiidprojectandimportthemetadataofthe
postgreSQLDBandaCSVfile.



1. StartJBDSbydoubleclickingtheshortcutinthedesktop.


2. Switchtothe
TeiidDesigner
perspective.
a. Window>Perspective>Other..


3. Select
TeiidDesigner


JBossFuseWorkshop Page6

ConnectingtoarunningServerinstanceisnecessarytoexecutepreviewsof
thedataservicesthatwewillcreate

4. Inthe
TeiidGuides windowselect
Teiid
.
5. Selecttheoption"
SettheDefaultJBoss/Teiidinstance "anddoubleclickonthe
JBossDataVirtualization6.2 serverintheServerpane.
6. DoubleclickontheJBossDataVirtualization6.2 serverintheServerpane.
7. Inthe
TeiidJDBCConnectionInfo ,enter
a. Host:
localhost
b. Username: teiidUser
c. Password:jboss#1!
8. Clickthe"
TestAdministrationConnection "and"
TestJDBCConnection "links.You
shouldgetan"OK"message.


9. Select
File>New>TeiidModelProject.


JBossFuseWorkshop Page7

10. Enter
Financials astheprojectnameandclick
Next.
11. Click
Nextagain.
12. Inthe
ModelProjectOptions windowenterthefollowingfoldernames:
a. DataSources
b. EnterpriseDataLayer
c. Schemas
d. VirtualBaseLayer
e. WebServices
13. Click
Finish.


14. Rightclickonthe
DataSourcesfolderandselect
Import>TeiidDesigner>JDBC
Database>>SourceModel .
15. Click
Next.


JBossFuseWorkshop Page8

Thesourcemodel(alsoreferredtoasthephysicalmodel)containsallthe
metadatanecessaryforaVirtualDatabase(VDB)anditsassociatedconnectors
toaccessorquerydatafromatargetsource.Thereareafewdifferentwaysof
creatingsourcemodels.Wewillfirstgoovertheprocessofcreatingasource
modelusingtheMetadataImportWizard.TheMetadataImportWizardhelps
youcreatenewmodelsintheworkspacebyimportingmetadatainformation
fromaphysicalenterpriseinformationsystemorotherdatasource.Whenyou
importmetadata,theDesignercreatesanewmetadatamodelforyou.Once
youhavecreatedthismetadatamodel,youcanalteritasyouwouldanyother.
Keepinmindthatanychangesyoumaketoanimportedmetadatamodeldo
notimpacttheunderlyingstructureoftheenterpriseinformationsystemthe
modelrepresents.InsomecasesyoucanalsousetheMetadataImportWizard
toupdatetheinformationwithinthemodelsbasedonchangestotheunderlying
datasource.TheTeiidDesignercomeswithanumberofpluginstoimport
metadatafromsourcessuchasJDBCcompliantdatabases,textfiles,
Salesforce.com,WSDLs,XMLSchemas,andDDLfiles.Moreinformationon
theImportWizard(andallofthefeaturesintheTeiidDesigner)isavailablein
theDesignerUsersGuide.

ImportingMetadatafromtheProductDatabase
16. IfaconnectionprofiledoesnotexistforthedatabasethatcontainstheProductSchema,
thenclickonthe
New button,tocreateit.
17. Inthe
ConnectionProfileWizard scrollthroughthelisttoseethesupporteddatabases,
thenchoose PostgreSQL fortheconnectionprofiletype.
18. Enter
Products fortheNameandclick Next.


JBossFuseWorkshop Page9

19. Selectthecrosshairedicon
NewDriverDefinition


20. Select
PostgreSQL


JBossFuseWorkshop Page10

21. Clickonthe
JarList
tabandselectthePostgreSQLJDBCdriverandclickon
Remove.


22. Clickon AddJar buttonandbrowseto ~/JDVWorkshop/support
,select
postgresql9.41201.jdbc4.jar .
23. ClickOK.
24. Fillthefollowingvalues:
a. Database :products
b. URL: jdbc:postgresql://localhost:5432/products
c. Username: postgres
d. Password: postgres
25. Check SavePassword.
26. Clickon TestConnection .
27. Ifthetestissuccessfulclick Finish.
28. IntheSelectDatabaseMetadata window,select
TABLE
.


JBossFuseWorkshop Page11
29. Click
Next.
30. Inthe
SelectDatabaseObjects window,expand
public
schemaandselect
TABLE
.
31. Click
Next.
32. Clickonthebuttonnextto
IntoFolder
andbrowseto
DataSources.


33. Click
OK.
34. Uncheck UseFullyQualifiedName.
35. Click
Finish
.


YouwillnowseetheProducts.xmisourcemodelwasopenedanditsPackage
Diagramcanbeseeninthemodelviewarea.Clickonproductdata_pkey(the
primarykeyoftheproductdatatableatthebottom)andnotethatthePrimary
Key(productid)inproductdataandtheForeignKey(productid)inthe
productssymbolstablearehighlighted.ThisisbecauseTeiidDesignerknows
viathemetadatathatalloftheseelementsarerelated


JBossFuseWorkshop Page12
36. Iftheserverisnotalreadystarted,gototheserverspane,andclickontheStartbutton.
37. GototheModelingActions ontherightsideoftheDesigner.
38. SelectModelJDBCSource anddoubleclickonthePreviewData action.



39. Clickonthebuttonandselect
Financials>DataSources>Products.xml>
productdata


40. Click
OK
.
41. Asuccessfulexecutionwillyieldsampleresults:


JBossFuseWorkshop Page13

ImportMetadatafromtheuscustomersDB
42. Rightclickonthe
DataSourcesfolderandselect
Import>TeiidDesigner>JDBC
Database>>SourceModel .
43. Click
Next.


44. Clickonthe
New button,tocreateaDBconnection.
45. Inthe
ConnectionProfileWizard scrollthroughthelisttoseethesupporteddatabases,
thenchoose PostgreSQL fortheconnectionprofiletype.
46. Enter
US_Customers fortheNameandclick Next.
47. Enterthefollowingvalues:
a. Database :uscustomers
b. URL: jdbc:postgresql://localhost:5432/uscustomers
c. Username: postgres


JBossFuseWorkshop Page14
d. Password: postgres
48. Check SavePassword.
49. ClickonTestConnection .
50. IfthetestissuccessfulclickFinish.
51. IntheSelectDatabaseMetadata window,select
TABLE .
52. ClickNext.
53. IntheSelectDatabaseObjects window,expand public
schemaandselect
TABLE
.
54. ClickNext.
55. Clickonthebuttonnextto IntoFolderandbrowseto
DataSources.
56. ClickOK.
57. Uncheck UseFullyQualifiedName.
58. ClickFinish .

ImportMetadatafromtheeucustomersDB
59. Rightclickonthe
DataSourcesfolderandselect
Import>TeiidDesigner>JDBC
Database>>SourceModel .
60. Click
Next.


61. Clickonthe
Newbutton,tocreateaDBconnection.
62. Inthe
ConnectionProfileWizard scrollthroughthelisttoseethesupporteddatabases,
thenchooseMySQL fortheconnectionprofiletype.
63. Enter
EU_Customers fortheNameandclickNext.
64. ClickonthecrosshairediconNewDriverDefinition


JBossFuseWorkshop Page15

65. SelectMySQLJDBCDriver,SystemVersion:5.1
66. Clickonthe JarList tabandselectthefirst
MySQLJDBC driverandclickon
Remove.
67. Clickon AddJar buttonandbrowseto ~/JDVWorkshop/support ,select
mysqlconnectorjava5.1.35bin.jar .
68. ClickOK.
69. Enterthefollowingvalues:
a. Database :eucustomers
b. URL: jdbc:mysql://localhost:3306/eucustomers
c. Username: root
d. Password: mysql
70. Check SavePassword.
71. Clickon TestConnection .
72. Ifthetestissuccessfulclick Finish.
73. IntheSelectDatabaseMetadata window,select
TABLE .
74. ClickNext.
75. IntheSelectDatabaseObjects window,expand eucustomers schemaandselect
TABLE .
76. ClickNext.
77. Clickonthebuttonnextto IntoFolder andbrowseto
DataSources.
78. ClickOK .
79. Uncheck UseFullyQualifiedName.
80. ClickFinish .


JBossFuseWorkshop Page16

ImportMetadatafromaflatfile

Sofarwehavebeenconnectingtorelationaldatabasesandtheirtables.You
canconnecttoothertypesofdatasourceswithintheperspective.Inthissection
wewillconnecttoaflatfileinaCSV(CommaSeparatedValues)formatwhich
containsmarketinformation.



81. Rightclickonthe
DataSourcesfolderandselect
Import..
82. Thistimeselect
TeiidDesigner>FileSource(Flat)>>SourceandViewModel
.


JBossFuseWorkshop Page17

83. Click
Next.
84. Selectoption
Flatfileonlocalfilesystem
andclick
Next
.


85. Clickonthe
New buttonandselectFlatFileDataSource
.
86. Enter
MarketData asthenameandclick Next.
87. Usethebuttonandbrowseto~/JDVWorkshop/support .
88. Click
Finish.
89. Select
marketdata.csv asDataFileName.


JBossFuseWorkshop Page18

90. Enter
MarketDataasModelNameandclick Next.
91. Reviewtheimportedfileandclick
Next.
92. Changethedatatypeforthe
price columnto
bigdecimal


93. Click
Next.
94. ChangeViewModellocation,byclickingonthe buttonnextto
Location.
95. Selectthe
VirtualBaseLayer folderandclick
OK
.
96. Enter
MarketData_VBL.xmi asmodelname.
97. Enter
marketdataviews asthenewviewname.
98. Click
Finish.


JBossFuseWorkshop Page19

99. Expand VirtualBaseLayerfolder,
MarketData_VBL.
100. Rightclickon marketdataviews andselect
Modeling>PreviewData.
101. YoushouldseeatablerepresentingtheCSVfiledataasifitwascomingfroma
relationaltable.


JBossFuseWorkshop Page20
Lab2CreateaVirtualBaseLayer


Beyondtheobviousadvantagesofintegratingdisparatedatasourcesusingan
intuitive,easytousetechnologysuchasJBossDataVirtualization,another
significantadvantageofcreatingadataservicesabstractionlayeristoprovide
alevelofisolationfromthephysicalsourcesthemselves.Bycreatingalayered
setofdataservicemodels,fromfinegrainedtomoregranulardataservices,
thedevelopercanbuildastabledataintegrationlayerthancaneasilyadaptto
changesinthesourcesystems.Thisisespeciallyadvantageouswhenthe
consumersofthedataareseparatefrom/havenocontroloftheprovidersofthe
data.Arecommendedbestpracticetobeginbuildingthis"futureproof"
abstractionlayeristocreateaVirtualBaseLayer(VBL),aonetoonemapping
ofeachphysicalsourcethatisolatesanyfuturechangesthatmayariseinthe
datasource(s)toaspecifictransformationinthemodel.TheseVBL
componentscanthenbeusedasbuildingblocksforhigherlevelservicesallof
thetransformationsbuiltontopofthemwillnotneedtobechangedshouldthe
needarisetoaccommodateachangeinthesource(s).

Createavirtualbaselayer:US_Customers_VBL
1. Rightclickonthe
VirtualBaseLayer folder,andselectNew>TeiidMetadataModel.
2. EnterUS_Customers_VBL astheModelName ,
Relational
asthe
ModelClass,and
ViewModel asthe
ModelType .
3. Select
Transformfromanexistingmodel intheSelectamodelbuilderpaneland
click
Next.


JBossFuseWorkshop Page21


4. Clickonthe buttontotherightofExistingModelandselect
Financials>
DataSources>US_Customers.
5. Click
Finish.

Observethatthevirtualmodelsarerenderedinyellowwhereasphysicalmodels
arerenderedinblue.

6. Savethemodel(Ctrl+S).
7. Doubleclickonthe
customer
tableinthe
US_Customer_VBL
model.Thiswillopenthe
TransformationEditor.


JBossFuseWorkshop Page22


Thetransformationhasalreadybeencreatedforyou,andasnotedaboveitisa
simpleonetoonemappingoftheunderlyingphysicalsource.Bybuildingup
thedataservicesinlayerslikethis,itallowsthedesignertokeepthe
transformationallogicforeachviewfairlysimple,andcomplexdata
transformationsareachievedbyusesseverallayersofsuchviews.

Now,inatraditionalrelationaldatabase,suchadesignwouldhaveafairly
heavyperformancepenaltyatruntimetodealwithalloftheselayersofviews,
whichiswhyinatraditionaldatabaseyoudseeausecaselikethisdefinedas
asingleviewdefinedwithaverylengthyandcomplexSQLstatement.The
reasonthisisnotanissuewithJBossDataVirtualizationisbecausetheQuery
EngineintheJBossDataVirtualizationServercompressesalloftheselayersat
runtimedowntoasingle(potentiallyhighlycomplex)querythatisthen
optimizedtorun(inparallelifpossible)againstthebackenddatasources.Thus
thereisnopenaltytousinglayeredviewswithJBossDataVirtualization.

The"transformationlanguage"intheTransformationEditorisANSIstandard
SQL.Wedontmakeyoulearnanewlanguagetodefinetransformations,you
justusenormalSQLsyntax,whichissomethingthatwefindmostdata
architectsarealreadyfairlycomfortablewith.Wewillbespendingmuchmore
timewiththeTransformationEditorfurtheroninthelab.

CreatetheEU_Customers_VBLandProducts_VBLModels
8. RightclickontheVirtualBaseLayer folder,andselectNew>TeiidMetadataModel.
9. Enter EU_Customers_VBL astheModelName ,
Relational
asthe
ModelClass,and
ViewModel asthe
ModelType .
10. Select
Transformfromanexistingmodel intheSelectamodelbuilderpaneland
click
Next.

11. Clickonthe buttontotherightofExistingModelandselect Financials>
DataSources>EU_Customers.


JBossFuseWorkshop Page23
12. Click
Finish.


JBossFuseWorkshop Page24
Lab3CreateanEnterpriseDataLayer

ThenextlayertobuildarethemodelsintheEnterpriseDataLayerfolder.What
thesemodelsdoisresolvetheslightsemanticdifferencesbetweenthe
EU_CustomersandUS_Customersdatabasetablesforexample,theUS
versionincludesafieldformiddleinitialonlyinthecustomertablewheretheEU
versionofthecustomertablehasacorrespondingfieldformiddlename.

Now,onetechniqueweuseheretomakeresolvingthesemanticdifferencesa
littlebiteasierhereistoconvertallofthedatatypesforthesetablesfromthe
standardSQLdatatypestooneofasetofcustomdatatypeswevedefined
usingJBossDataVirtualizationsdatadictionarycapabilities.Thiswaywecan
ensurethatwegetalldataforaparticularfieldintothesamedatatype.Italso
givesusaguidetoresolvinganydifferencesinfieldnamesbetweenthetwo.

Notethatusingadomainspecific(orenterprisewidestandard)datadictionary
isonlyarecommendation.Thereisnohardrequirementtodefineoruseadata
dictionarybutinsteaddothissemanticmediationwithoutone(bymanually
comparingdatatypesandfieldlengthsbetweenthetwodatasources).Ourgoal
withJBossDataVirtualizationistonotimposeanyroadblocksforthoseusers
thatwanttogettheirusecasesaddressedasrapidlyaspossiblesowedont
forceanyrequirementonuserstodefineadatadictionaryorataxonomyor
anythinglikethat.


JBossFuseWorkshop Page25
ImporttheDataDictionarySchema
1. Rightclickonthe
Schemas
folderandselect
Import.
2. Select
TeiidDesigner>XMLSchemas andclick
Next.


3. ChoosetoimporttheschemafromthefilesystemandclickNext.
4. Browseto~/JDVWorkshop/support andselect
DataDictionary.xsd .
5. Click
Finish.
6. Doubleclickontheimported
DataDictionary.xsdfiletoopenitintheXMLSchema
viewer.

CreatetheEU_Customers_EDLEnterpriseDataLayer
7. Rightclickonthefolder
EnterpriseDataLayerandselect
New>TeiidMetadataModel
tobringupthe
NewModelWizard .
8. EnterEU_Customers_EDL astheModelName.
9. SelectRelationalas
ModelClass .


JBossFuseWorkshop Page26
10. Select
ViewModel
as
ModelType.
11. Select
TransformfromanexistingModel.
12. Click
Next.


13. Select
EU_Customers_VBL
asthebasismodelandclick
OK
.
14. Click
Finish.



Wearegoingtousethedatabaseschemaoftheeucustomersdatabaseasthe
standarduponwhichtobaseourenterprisemodel.Thereforewewontbe
changinganyofthetablenamesorcolumnnames,butwewillbemodifyingthe
transformationtoincorporateourDataDictionary.Whenwegettothe
transformationsfortheUS_Customers_EDLandEU_Customers_EDLmodels
wewillseethatmorechangeswillbenecessarytomakethemsemantically
alignwithourenterprisemodel.

15. OpenthetransformationEditorforthe
customer
tableof
EU_Customers_EDL
by
doubleclickingonit.


JBossFuseWorkshop Page27
16. SelectCustomerID andnotethatthereisaDatatype fieldinthe
PropertiesPanelon
thelowerleft.
17. Clickonthevaluefieldtotherightofdatatypeinthe
Properties Panelinthelower
lefthandsideofJBDS.
18. Whenclickinginthisfieldinthe
Properties Panel,theSelectaDatatypeWizard is
presented.
19. IntheSelectaDatatypewindowchoose CustomerID userdefinedtypeforthe
CustomerID columnandclick OK.
20. Repeatthislaststepforeverycolumninthe Customer tablechoosingtheappropriate
datatype.


21. Repeatthisforthecolumnsofthe
Account
and
AccountHoldings
tablesinthe
EU_Customers_EDL model.

Whensavinganyofthelasttables,anerrorwillappear:SELECT
transformationisvalid,butNOTfullyreconciled:Thetransformationoutput
typesdonotmatchthetargetattributetypes.Thisisbecausesomeofthe
enterprisedatatypeswehavechosendonotmatchtheunderlyingformatofthe
sourcedata(AccountID,forexamplewearedefiningasalong,butitisa
bigdecimalinthesource).Toaddressthesetypemismatcheswewillopenthe
Reconciler

22. Foreachofthe
Account
and
AccountHoldings
tables,clickonthe
Reconciler
button

(totherightof"SupportsUpdate")intheTransformationEditor.


JBossFuseWorkshop Page28

23. Clickonthe
TypeResolver..
buttontosolvethesetypeerrors.


24. Selecteachmappingatthetopandseethattheproposedtransformationatthebottom
changes.

Wewanttoconverttothedatatypethatisassignedtotheenterprisedatatype.
(TheVirtualTargetAttributesectionofthewizardaboveletsyoumodifythat
datatypewedontwanttodothathere.)

Notethattherearethreedifferenttypemappingsbeinghandledhere:
bigdecimaltolong,timestamptodate,andbigdecimaltofloat.Wearenot
worriedaboutprecisioninthiscase,sowecansimplyconvertallsourceSQL
symboldatatypes

25. Clickonthe
ConvertallsourceSQLsymboldatatypes
button.
26. Click
OK.


JBossFuseWorkshop Page29

27. Performthesamestepswiththe
accountholdings
table.

Ifwewereworriedaboutprecision,wecouldtakeanynumberofstepsto
refine/modifythetransformationincludingcodingitbyhandinthe
TransformationEditor,usingoneofthelargesetofoutoftheboxfunctions
providedwiththeproduct,orbycreatingourownUserDefinedfunction.

CreatetheUS_Customers_EDLEnterpriseDataLayer

Nowthatwehavefinishedwithbuildingthefirstenterprisedataservicelayerin
ourmodel,wecantakeashortcuttocreatingthesametypeofmodelforthe
US_Customersmodel.EssentiallywearegoingtousetheEU_Customers_EDL
modelasatemplateforcreatingtheUS_Customers_EDLmodel,andthen
replacethesourcesofthetransformationsforeachofthetableswiththecorrect
ones.


JBossFuseWorkshop Page30

28. Rightclickonthe
EnterpriseDataLayer folderandselect
New>TeiidMetadata
Model.
29. Enterthefollowingvalues:
a. ModelName: US_Customers_EDL
b. ModelClass: Relational
c. ModelType: ViewModel
d. Selectamodelbuilder: Transformfromanexistingmodel.


30. Choosethe EU_Customers_EDL modelinthe
EnterpriseDataLayer
folderandclick
OK.
31. Click
Next.
32. Click
Finish.
33. Openthetransformationeditoron
US_Customers_EDL.


34. RightclickontheSourcetableandselect
RemoveTransformationSources.


JBossFuseWorkshop Page31

35. Click
OK.
36. Selectthe
VirtualBaseLayerUS_Customers_VBLcustomer tableanddrag&
dropthetableintheSourcesswimlaneofthe
US_Customers_EDL
window.


37. Clickonthe
Reconciler
button.


JBossFuseWorkshop Page32

38. Assign(Bind)variablesthatdonotautomaticallymatch.Byselectingthesourceonthe
leftandthetargetontheright,wecanthenbindeachofthefollowing:
a. ssntocustomerid
b. middleinitialtomiddlename
c. streetaddress1tostreetaddress
d. aptnumbertostreetaddress2
e. statetostateprovince
f. zipcodetopostalcode
g. phonetophonenumber(besuretoassignthisonthelefttooandnotmapitto
country!)
39. Clickonthecountry filedandthenclickthe
f(x)
buttontoopenthe
Expressionb
Builder.
40. EnterUSAasthevalueandclickOK .


41. Click
Ok
.


JBossFuseWorkshop Page33

42. Repeatthesestepsfortheothertwotables(
account and
accountholdings).
a. Deletethe
EU_Customers_EDL.account &
EU_Customers_EDL.accountholdings sourceanddrag&droptheappropriate
US_Customers_VBL.account &
US_Customers_VBL.accountholdings
sourcemodelandperformanynecessaryreconciliations.


JBossFuseWorkshop Page34
Lab4CreateaFederatedDataLayer


NowthatwehavecreatedourVirtualBaseLayer(toisolateusfromchangesin
thesources),definedanenterprisedatadictionarytosemanticallyreconcilethe
variousterminologiesinourdisparatedatasources,andcreatedanEnterprise
DataLayerthatcapturesthosemappings,wearereadytointegratesome
differentdatasources.And,sincewehavethegroundworkalready,itcouldnot
besimpler.


1. Rightclickonthe
FinancialsProjectandselectNew>Folder
.
2. Enter
FederatedDataLayer asitsnameandclickFinish.
3. Rightclickon
FederatedDataLayer folderandselect
New>TeiidMetadataModel.
4. Enterthefollowingvalues:
a. ModelName: All_Customers
b. ModelClass :Relational
c. ModelType: ViewModel
d. Selectamodelbuilder: Transformfromanexistingmodel.
5. Click
Next.


JBossFuseWorkshop Page35

6. Select
EU_Customers_EDL astheexistingmodelandclick Finish.
7. Doubleclickonthe
customer
tablein
All_Customers.
8. ExpandtheEnterpriseDataLayer folder,andselectthecustomer tableunder
US_Customers_EDL.
9. Clickonthe
"AddUnionTransformationSource(s) icon.


10. Savethemodel(Ctrl+S).
11. Clickonthe
customer
table(leftofthediagram)andclickonthe
PreviewData
icon


JBossFuseWorkshop Page36


JBossFuseWorkshop Page37
Lab5CreateaWebService

Inthislab,youwillbeutilizingtheTeiidDesignerandJBDStocreateaWeb
service.ItshouldbenotedthatthislabisnotaguideonWebservicesorhowor
whentousethem.Rather,thisisaninstructionalapproachforsomeofthe
advancedcapabilitiesofTeiidDesigner.


1. RightclickontheAll_Customers modelunder
FederatedDataLayer folder.
2. Select
Modeling>CreateWebService.
3. Inthe
Location field,browsetothe
WebServices folderandclick
OK.
4. Click
Finish.


JBossFuseWorkshop Page38

5. Selectthe
getcustomer
operationandclickonthe
PreviewData
icon


6. EnterCST01033asCustomerID andclick
OK.
7. TheWebServicewillbeexecuted,whichinturnwillexecuteaSelectstatementwichwill
returnacustomerrecordinXML(SOAP)format.


JBossFuseWorkshop Page39



JBossFuseWorkshop Page40
Lab6VirtualDatabase(VDB)Deployment

WehavebeendoingallofourqueryingdirectlythroughthePreviewinterfaceof
TeiidDesigner,butinordertomakeourdataservicesavailabletoexternal
clients,wewillneedtopackagethemupintoaVirtualDataBase(VDB),the
deployableartifactthatdrivestheruntimebehavioroftheserver.Itisexactly
analogoustoaWARoranEARfileoncecreateditcansimplybedroppedinto
thedeploydirectoryofarunningserver(withJBossDataVirtualizationinstalled)
andtheTeiidServerprocesswillhotdeploythedataservicesmodeledwithinit.
Theprocessisverysimple.

1. Rightclickonthe
Financials
projectandselect
New>TeiidVDB
.
2. EnterFinancialsasthe
VDBname.


3. Clickonthe
Add
buttonandselectthe
All_Customers
modelunder
FederatedDataLayer folder.


JBossFuseWorkshop Page41

4. Click
Finish
.

Allmodels,virtualandphysical(aswellastheDataDictionaryschemaweused)
havebeenbroughtintotheVDB.ThisisbecausetheQueryEnginewillneedall
ofthemodelsandtheirassociatedmetadata/transformations,inordertodrive
theruntimebehavior.However,thatdoesnotmeanthatthedataservices
developerisforcedtoexposeallofthesemoregranulardataservicesifthey
shouldchoosenotto.Indeeditisabestpracticetoatleastcompletelyhidethe
sourcedatasystems,topreventusersofthevirtuallayerfromgoingdirectlyto
thesources.InthiswayJBossDataVirtualizationcanaddadditionallayersof
securityandauthorization/authenticationtoprotectsensitivedata.

5. Unchecktheboxesinthesecondcolumn(annotatedwiththemagnifyingglassicon)on
thephysicalmodels(
EU_Customers and
US_Customers ).

Thiswillmaketheminvisible/unavailabletoanyclientconnectingtothisVDB.
Themodelsarestillthere(andmustbe,fortherestofthefederationtowork),
buttheycannotbeaccessedotherthanthroughthehigherleveldataservices
thathavebeendefined.

6. SavetheVDBfile(Ctrl+S).

CreatedatasourcesontheJBossDataVirtualizationserver
ThereisonethingweneedtodobeforewedeploytheVDBtotheserver.We
needtoinstallthedatasourcesintotheJBossDataVirtualizationservers
deploydirectory.
Thiscanbedoneinanumberofways.IfwehavetheDataSourceds.xmlfile


JBossFuseWorkshop Page42
wecansimplydropitintothedeploydirectory.NotehoweverthattheJNDI
namethattheVDBexpectsmustmatch.TheJNDInametheVDBexpectsisin
acolumnnamedJNDIName.Forthisexample,theJNDInamesare
EU_CustomersandUS_Customersandarederivedautomaticallyfromthe
Sourcemodelname.

7. Rightclickon
Financials.vdbandselect Modeling>Deploy
.
8. Clickonthe
CreateSource button
.
9. GototheServerstabandexpandJBossDataVirtualization6.2.
10. ExpandTeiidInstanceConfiguration
>VDBs.
11. ThereshouldbeaFinancials
VDBdeployed.
12. Openawebbrowserandgoto http://localhost:8080
13. Clickon
AdministrationConsole.


14. Loginwithadmin/jboss#1!
15. Clickonthe
Runtime tab.
16. Clickon
Subsystems>VirtualDatabases.
17. Clickonthe
Financials VDB.
18. Gothroughthetabsbelow(Models,Caching,DataRoles,Requests).


JBossFuseWorkshop Page43

19. GobacktoJBDS.
20. Rightclickonthe .
All_Customerscustomer
tableandselect
Modeling>Show
DependencyDiagram.


21. Clickonthe
Outlinetabnexttothe
Model tab(ifitdoesntappearclickon
Window>
ShowView>Outline ).
22. Clickonthe
ShowDiagramOverview button,nexttothe PreviewData icon.
23. Youcanscrollthe"viewfinder"ontheleftinthe
Outline viewtonavigatethemodelon
theright.Youcanalsohoveryourmouseoverthetransformations(thediamondshaped
"T"nodes)ontherighttoexaminethecontentofthetransformations.

Thiscapabilityishelpfulfornavigatingamonglarge,complicatedmodels,and
alsoshowstheprovenance/lineageofanyselecteddataservice.Aswasnoted
atthebeginning,thereistremendouspowerandreusablilitythatresultsfrom
theabilitytocreatedataservicelayerswithoutaperformancepenalty.


JBossFuseWorkshop Page44
Lab7ConsumingWebServicesasDataSources

InthislabyouwillbeusingtheTeiidDesignertoconsumeWebServices.This
labisnotaguideonWebServices,onhoworwhentouseorcreateWeb
Services,butaninstructionalapproachforsomeofthecapabilitiesofTeiid
DesignertoconsumeWebServicesasadatasource.Inthislabyouwillcreate
theCountryInfoService.xmiandCountryInfoServiceView.xmimodels.

CreaterelationalmodelfromSOAPwebservice
1. Rightclickonthe
DataSources folderandselect
Import..
2. Select
TeiidDesigner>WebServiceSource>>SourceandViewmodel(SOAP)
3. Click
Next.
4. Clickonthe
New button(
ConnectionProfile)


JBossFuseWorkshop Page45

5. EnterCountryInfoastheNameandclick
Next.
6. ClickontheURLbutton.
7. Enterhttp://www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?WSDL
8. ClickOK.
9. ClickontheTestConnectionbutton.
10. Click
Next.
11. Select
CountryInfoServiceSoap asthe
Endpoint.
12. Click
Finish.


13. Clickon
DeselectAll.
14. Selectonlythe
CountryName
and
FullCountryInfo
operations.


JBossFuseWorkshop Page46

15. Click
Next.

TheCreateRelationalModelfromWebServicedialogisdisplayed.Thispage
allowsyoutodefinethesourceandtargetmodelswherethegenerated
procedureswillbedefinedin.NoticethattheNamefieldsfortheSourceand
Viewmodelarepopulated.Basedoninitialworkspaceselection,thelocationfor
thesemodelsmaybepresetbutchangeableandthesourceandviewmodel
nameswillbegeneratedbasedontheservicename.


16. Clickonthe buttonnexttothe
Locationfieldinthe
ViewModelDefinition
area.
17. BrowsetoFinancials/VirtualBaseLayer andclick OK.
18. Renamethe ViewModel toCountryInfo_VBL.xmi.
19. Click
Next.
20. Click
Next.
21. Select
sCountryISOCode inthe
SchemaContent andclick
Add.


JBossFuseWorkshop Page47

22. Clickonthe
Response
tab.
23. Select
CountryNameResult in
SchemaContents
andclick
Add
.


JBossFuseWorkshop Page48
24. Select
FullCountryInfo inthe
Operationsarea.
25. Clickonthe
Request tab.
26. Select
sCountryISOCode intheSchemaContent andclick
Add.
27. Clickonthe
Response tab.
28. Select
FullCountryIndoResult in
SchemaContents andclick
Add.
29. Select
Yesinthepopupdialog.
30. Selecteachofthechildrenelementsunder FullCountryIndoResult andclick
Add.
31. Whenapopupdialogappearswith Languagesclick
Yes.
32. Click
Finish.


33. Saveallthefiles(Shift+Ctrl+S).
34. ExpandVirtualBaseLayer folder,andCountryInfo_VBL model.
35. DoubleclickontheCountryName proceduretoopenit.
36. DoubleclickontheTransformation arrowtoshowtheSQLcode.
37. Clickonthe
PreviewData icon.


38. Enteranycountrycode,suchas
AR
forArgentina,toretrievethedata.
39. Click
OK
.


JBossFuseWorkshop Page49

40. Closethemodel.

CreaterelationalmodelfromRESTservice
41. RIghtclickonthe
DataSources folderandselect
Import..
42. Select
TeiidDesigner>WebServiceSource>>SourceandViewModel(REST) .
43. Click
Next.
44. ClickontheNewbutton(RESTWebServiceSource ).
45. EnterGeoCodeasthe Name andclick
Next.
46. Enter
http://maps.googleapis.com/maps/api/geocode/json asthe
ConnectionURL.
47. Select
JSON as
ResponseType .
48. Inthe
Parameters tab,clickonthe Addbutton.
49. Enteraddressasthe Name .
50. Enter100EDavieSt,Raleigh,NC27601,USAasthe DefaultValue
.
51. Click
OK.


52. Click
Finish
.


JBossFuseWorkshop Page50

53. Click
Next.
54. Renamethe SourceModelDefinition toGeoCodingService.
55. GototheViewModelDefinition
,clickonthebuttonandbrowseto
Financials/VirtualBaseLayer .
56. Click
Ok.
57. Renamethe ViewModelDefinitiontoGeoCodingService_VBL.
58. EnterGeoCodingProcedureasthe ProcedureName .
59. Click
Next.


60. Expandthe response>results>geometry
>location
elements.
61. Selectthe
lat
and
lng
elementandclick
Add
.


JBossFuseWorkshop Page51

62. Click
Finish
.
63. Doubleclickonthe
GeoCodingProcedure andedititstransformationSQL.
64. Deletetheportionofthecode||'/'||
GeoCodingService_VBL.GeoCodingProcedure.address.


65. Savethemodel(Ctrl+S).


JBossFuseWorkshop Page52
66. Clickonthe
PreviewDataicon.
67. Enter100EDavieSt,Raleigh,NC27601,USAastheaddress.

68. Click
OK
.


69. ThegeolocationofRedHatHQshouldappearintheresults.


JBossFuseWorkshop Page53
Lab8OData
TheOpenDataProtocol(OData)isaWebprotocolforqueryingandupdating
datathatprovidesawaytounlockyourdataandfreeitfromsilosthatexistin
applicationstoday.ODatadoesthisbyapplyingandbuildinguponWeb
technologiessuchasHTTP,AtomPublishingProtocol(AtomPub)andJSONto
provideaccesstoinformationfromavarietyofapplications,services,and
stores.ODataisusedtoexposeandaccessinformationfromavarietyof
sourcesincluding,butnotlimitedto,relationaldatabases,filesystems,content
managementsystemsandtraditionalWebsites.ODataisconsistentwiththe
waytheWebworks,itmakesadeepcommitmenttoURIsforresource
identificationandcommitstoanHTTPbased,uniforminterfaceforinteracting
withthoseresources(justliketheWeb).ThisallowsODatatoenableanew
levelofdataintegrationandinteroperabilityacrossabroadrangeofclients,
servers,services,andtools.

FormoreinformationonODataseeh ttp://www.odata.org

WhenyouhavesuccessfullydeployedtheFinancialsVDBintotheJBossData
Virtualizationserver,theODataprotocolsupportisimplicitlyprovidedbythe
JBossDataVirtualizationserverwithoutanyfurtherconfiguration.


JBossFuseWorkshop Page54
1. Openawebbrowserandgoto
http://localhost:8080/odata/Financials.1/All_Customers.customer
2. EnterteiidUser/jboss#1!asuser/password.
3. Rightclickonthepageandselect ViewPageSource.
4. Youcanseeasimilarresulttoexecutinga SELECT*FROM
All_Customers.customer butinXML.
5. Goto http://localhost:8080/odata/Financials.1/All_Customers.customer?$format=json

Howtoquerythedata
6. Tosearchforcustomerwithcustomerid='CST01033'whichistheSQLequivalentof
a. SQL>SELECT*FROMAll_Customers.customerWHERE
customerid='CST01033'
7. UsethefollowingURL:
http://localhost:8080/odata/Financials.1/All_Customers.customer('CST01033')


JBossFuseWorkshop Page55

AnotherwaytoquerythedataistousetheODatafiltersystemqueryoption
using$filterintheURL.The$filtersystemqueryoptionallowsclientstofilter
thesetofresourcesthatareaddressedbyarequestURL.$filterspecifies
conditionsthatMUSTbemetbyaresourceforittobereturnedinthesetof
matchingresources.

8. TosearchcustomersfromtheUSAwhichistheSQLequivalentof
a. SQL>SELECT*FROMAll_Customers.customerWHEREcountry='USA'
9. UsefollowingURL:
http://localhost:8080/odata/Financials.1/All_Customers.customer?$filter=countryeq
'USA'
10. PlayaroundwithODatasyntax.


JBossFuseWorkshop Page56
Lab9DashboardBuilder

TheDashboardBuilderisafullfeaturedwebapplicationwhichallows
nontechnicaluserstovisuallycreatebusinessdashboards.Dashboarddata
canbeextractedfromheterogeneoussourcesofinformationsuchasJDBC
databasesorregulartextfiles.Somereadytousesampledashboardsare
providedfordemoandlearningpurposes.

Itfeatures:

Visualconfigurationofdashboards(Drag&Drop).
GraphicalrepresentationofKPIs(KeyPerformanceIndicators).
Configurationofinteractivereporttables.
DataexporttoExcelandCSVformat.
Filteringandsearch,bothinmemoryorSQLbased.
Dataextractionfromexternalsystems,throughdifferentprotocols.
Granularaccesscontrolfordifferentuserprofiles.
Lookandfeelcustomizationtools.
Pluggablechartlibraryarchitecture.

WearecreatingaFinancialDashboardbasedonthemodelsoftheFederated
DataLayer.Thestepsofcreatingadashboardisdescribedbelow:


JBossFuseWorkshop Page57

Firstweneedtodefineanexternalconnectionwhichcanbeeitheraflat
fileoradatabase
Nextstepistocreateadataproviderbasedontheexternalconnection.
Thedataprovidercontainsthedefinitionofthedatatobedisplayedin
thedashboard.
AdashboardinDashboardBuildercontainsoneormoreWorkspaces
EachWorkspacecontainsoneormorePages
EachPagecontainsoneormorePanels
EachPanelisconnectedtoacomponent
Therearethreecomponentcategories
Dashboard(I.e.HTMLeditor,KPI)
Navigation(I.e.Treemenu,Breadcrumb,Logoutpanel )
System(I.e.SystemrelatedcomponentslikeDatasource
manager )

1. Openawebbrowserandgoto
http://localhost:8080/dashboard


2. LoginusingdashboardAdmin/jboss#1!


3. Clickon
Administration>Externalconnections
.


JBossFuseWorkshop Page58
4. Clickon
+CreatenewDataSource.


5. Select
JNDI asthe
Type.
6. EnterFinancialsasthe
Name .
7.
Enterjava:/Financialsas
JNDIPath
.
8. Enterselect1as
TestQuery.


9. ClickontheCheckDataSource button.
10. Clickonthe
Save
button.
11. Click
Administration>DataProviders .


12. Clickon
+Createnewdataprovider .
13. SelectSQLQueryasthe Type.
14. EnterFinancialsDataasthe
Name .
15. SelectFinancialsasthe
DataSource .
16. EnterSelect*fromAll_Customers.customerasthe
Query
.
17. Clickon
Attemptdataload button.
18. Click
Save.
19. Updatethecolumnnamesasthefollowing


JBossFuseWorkshop Page59

20. Click
Save
.


21. Clickonthe
Createnewworkspace icon.
22. EnterFinancialsasthe
Name.
23. EnterFinancialsDashboardasthe
Title
.
24. Click
Createworkspace.


25. ExpandWorkspaces>Financials andclickon
Pages .
26. EnterHomeastheName.
27. Clickon
Createnewpage .
28. Clickonthe
Workspace icontopleft,togobacktothemainscreen.
29. Clickonthe
Createanewpanelinthecurrentpage.


JBossFuseWorkshop Page60

30. ExpandNavigation
andclickonTreeMenu
.
31. Drag&drop
Createpaneltothe
LEFT_TOP regionofthepage.


32. Clickonthe
Createanewpanelinthecurrentpage.
33. ExpandNavigation andclickonLogoutPanel.
34. Drag&dropCreatepanel tothe
HEADER_RIGHTTOP regionofthepage.
35. Clickonthe
Createanewpanelinthecurrentpage.
36. ExpandDashboard andclickonHTMLEditor
.
37. Drag&dropCreatepanel tothe
CENTER_1regionofthepage.
38. Clickonthe
Createanewpanelinthecurrentpage.
39. ExpandDashboard andclickonKeyPerformanceIndicator .
40. Drag&dropCreatepanel tothe
CENTER_2regionofthepage.


41. Select
FinancialsData asthe
DataProvider
.
42. Enter#customersbycountryas KPIsname.
43. SelectCountryasDomain(XAxis) .
44. SelectCustomerIDas Range(YAxis) .
45. Select
Valueas
Sortintervalsby.
46. Select
Ascendant as
SortOrder.
47. Closethedialog.
48. ClickonthegearsiconintheHTMLEditorpanel.


JBossFuseWorkshop Page61
49. Select
EditContent .
50. EnterWelcometotheFinancialsDashboard.
51. Selectthetext,enableboldandselectHeading1.
52. Clickonthe
Saveicon.

FinancialsDashboardDemo

Existingdashboardscanexported/importedinDashboardBuilder.Toshowcase
theDashboardBuilderfeatures,weprovideasampleFinancialsDashboard.

53. GototheShowcaseworkspaceastheactiveworkspace.Select
Administration>
ImportandExport
.


54. Clickthe
Export/ImportWorkspaces tab.
55. Clickonthe
Browse buttoninthe
Importarea.
56. Selectthe
~/JDVWorkshop/support/dashboard/2WorkspaceFinancials.xml file.
57. Clickonthe
Importbutton.
58. Clickonthe
Browse buttoninthe
Importdashboards
area.
59. Selectthe~/JDVWorkshop/support/dashboard/3CustomerReports.kpiex file.
60. Clickthe
Importbutton.
61. Click
goback.
62. Clickonthe
Browse buttoninthe
Importdashboards
area.
63. Selectthe~/JDVWorkshop/support/dashboard/4AccountReports.kpiex
file.


JBossFuseWorkshop Page62
64. Clickthe
Import button.
65. Click
goback .
66. Clickonthe
Browse buttoninthe
Importdashboards
area.
67. Selectthe~/JDVWorkshop/support/dashboard/5AccountHoldings.kpiex
file.
68. Clickthe
Import button.
69. Click
goback .
70. Selectthe
FinancialsDemo workspace.
71. Inthenavigationtree,select
DemoDashboards .
72. Selecteachofthefollowing:
a. CustomerReports


b. AccountReports


c. AccountHoldingsReports


JBossFuseWorkshop Page63

Navigatethroughthedashboardsanddiscoverhowitissetup.

DashboardBuilderprovidesaveryeasywaytovisualizeyourdata.


JBossFuseWorkshop Page64

You might also like