9-6 Integration Server Built-In Services Reference PDF
9-6 Integration Server Built-In Services Reference PDF
Version 9.6
April 2014
This document applies to webMethods Integration Server Version 9.6 and to all subsequent releases.
Specications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright 1998-2014 Software AG, Darmstadt, Germany and/or Software AG USA Inc., Reston, VA, USA, and/or its subsidiaries and/or
its aliates and/or their licensors.
The name Software AG and all Software AG product names are either trademarks or registered trademarks of Software AG and/or
Software AG USA Inc. and/or its subsidiaries and/or its aliates and/or their licensors. Other company and product names mentioned
herein may be trademarks of their respective owners.
Detailed information on trademarks and patents owned by Software AG and/or its subsidiaries is located at
hp://documentation.softwareag.com/legal/.
Use of this software is subject to adherence to Software AG's licensing conditions and terms. These terms are part of the product
documentation, located at hp://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).
This software may include portions of third-party products. For third-party copyright notices and license terms, please refer to "License
Texts, Copyright Notices and Disclaimers of Third Party Products. This document is part of the product documentation, located at
hp://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).
Document ID: IS-BIS-RF-96-20141118
M
Table of Contents
Table of Contents
About this Guide............................................................................................................................21
Document Conventions............................................................................................................ 25
Documentation Installation........................................................................................................25
Online Information.................................................................................................................... 26
ART Folder......................................................................................................................................27
Summary of Elements in this Folder........................................................................................28
pub.art:listRegisteredAdapters...........................................................................................30
pub.art.connection:disableConnection...............................................................................31
pub.art.connection:enableConnection............................................................................... 31
pub.art.connection:getConnectionStatistics.......................................................................32
pub.art.connection:listAdapterConnections....................................................................... 32
pub.art.connection:queryConnectionState.........................................................................33
pub.art.listener:disableListener.......................................................................................... 34
pub.art.listener:enableListener...........................................................................................35
pub.art.listener:listAdapterListeners...................................................................................35
pub.art.listener:queryListenerState.................................................................................... 36
pub.art.listener:resumeListener......................................................................................... 37
pub.art.listener:setListenerNodeConnection......................................................................37
pub.art.listener:suspendListener........................................................................................38
pub.art.notification:disableListenerNotification...................................................................39
pub.art.notification:disablePollingNotification.....................................................................39
pub.art.notification:enableListenerNotification................................................................... 39
pub.art.notification:enablePollingNotification..................................................................... 40
pub.art.notification:listAdapterListenerNotifications........................................................... 40
pub.art.notification:listAdapterPollingNotifications............................................................. 41
pub.art.notification:queryListenerNotificationState.............................................................42
pub.art.notification:queryPollingNotificationState...............................................................43
pub.art.notification:resumePollingNotification.................................................................... 44
pub.art.notification:setListenerNotificationNodeListener....................................................44
pub.art.notification:setPollingNotificationNodeConnection.................................................45
pub.art.notification:suspendPollingNotification.................................................................. 46
pub.art.service:listAdapterServices....................................................................................46
pub.art.service:setAdapterServiceNodeConnection.......................................................... 47
pub.art.transaction:commitTransaction.............................................................................. 47
pub.art.transaction:rollbackTransaction............................................................................. 48
pub.art.transaction:setTransactionTimeout........................................................................49
pub.art.transaction:startTransaction...................................................................................50
Cache Folder.................................................................................................................................. 53
About Checkpoint Restart.........................................................................................................54
M
Table of Contents
M
Table of Contents
pub.client.ftp:sessioninfo..................................................................................................109
pub.client:http...................................................................................................................110
pub.client.ldap:add...........................................................................................................119
pub.client.ldap:bind.......................................................................................................... 120
pub.client.ldap:cancelNotification.....................................................................................121
pub.client.ldap:compare...................................................................................................122
pub.client.ldap:delete....................................................................................................... 123
pub.client.ldap:modify...................................................................................................... 125
pub.client.ldap:registerNotification................................................................................... 126
pub.client.ldap:rename.....................................................................................................128
pub.client.ldap:search...................................................................................................... 129
pub.client.oauth:executeRequest.....................................................................................131
pub.client.sftp:cd.............................................................................................................. 135
pub.client.sftp:chgrp.........................................................................................................136
pub.client.sftp:chmod....................................................................................................... 136
pub.client.sftp:chown....................................................................................................... 137
pub.client.sftp:get.............................................................................................................137
pub.client.sftp:login.......................................................................................................... 139
pub.client.sftp:logout........................................................................................................ 139
pub.client.sftp:ls............................................................................................................... 140
pub.client.sftp:mkdir......................................................................................................... 141
pub.client.sftp:put.............................................................................................................141
pub.client.sftp:pwd........................................................................................................... 142
pub.client.sftp:rename......................................................................................................143
pub.client.sftp:rm..............................................................................................................144
pub.client.sftp:rmdir..........................................................................................................144
pub.client.sftp:symlink......................................................................................................145
pub.client:smtp.................................................................................................................145
pub.client:soapClient........................................................................................................149
pub.client:soapHTTP....................................................................................................... 166
pub.client:soapRPC......................................................................................................... 170
Date Folder................................................................................................................................... 175
Pattern String Symbols...........................................................................................................176
Time Zones.............................................................................................................................177
Examples................................................................................................................................ 179
Notes on Invalid Dates........................................................................................................... 180
Summary of Elements in this Folder......................................................................................180
pub.date:calculateDateDifference....................................................................................181
pub.date:currentNanoTime.............................................................................................. 182
pub.date:dateBuild........................................................................................................... 182
pub.date:dateTimeBuild................................................................................................... 183
pub.date:dateTimeFormat................................................................................................185
pub.date:elapsedNanoTime............................................................................................. 186
pub.date:formatDate........................................................................................................ 187
M
Table of Contents
pub.date:getCurrentDate................................................................................................. 188
pub.date:getCurrentDateString........................................................................................ 188
pub.date:getWorkingDays................................................................................................189
Db Folder...................................................................................................................................... 191
Summary of Elements in this Folder......................................................................................192
pub.db:call........................................................................................................................194
pub.db:clearTransaction...................................................................................................196
pub.db:close.....................................................................................................................197
pub.db:closeAll.................................................................................................................198
pub.db:commit................................................................................................................. 198
pub.db:connect................................................................................................................ 199
pub.db:delete................................................................................................................... 201
pub.db:execSQL.............................................................................................................. 203
pub.db:getProcInfo...........................................................................................................207
pub.db:getProcs...............................................................................................................208
pub.db:getTableInfo......................................................................................................... 210
pub.db:getTables..............................................................................................................211
pub.db:insert.................................................................................................................... 213
pub.db:query.................................................................................................................... 215
pub.db:rollback.................................................................................................................216
pub.db:startTransaction................................................................................................... 217
pub.db:update.................................................................................................................. 218
Document Folder......................................................................................................................... 221
Summary of Elements in this Folder......................................................................................222
pub.document:bytesToDocument.................................................................................... 223
pub.document:deleteDocuments..................................................................................... 224
pub.document:documentListToDocument........................................................................224
pub.document:documentToBytes.....................................................................................226
pub.document:documentToDocumentList........................................................................228
pub.document:documentToXMLValues............................................................................230
pub.document:groupDocuments......................................................................................230
pub.document:insertDocument........................................................................................ 231
pub.document:searchDocuments.................................................................................... 232
pub.document:sortDocuments......................................................................................... 233
pub.document:XMLValuesToDocument........................................................................... 234
Event Folder................................................................................................................................. 237
Summary of Elements in this Folder......................................................................................238
pub.event:addSubscriber................................................................................................. 242
pub.event:alarm............................................................................................................... 245
pub.event:alarmInfo......................................................................................................... 246
pub.event:audit................................................................................................................ 247
pub.event:auditError........................................................................................................ 248
pub.event:auditErrorInfo.................................................................................................. 250
M
Table of Contents
pub.event:auditInfo.......................................................................................................... 251
pub.event:callstackItem................................................................................................... 252
pub.event:deleteSubscriber............................................................................................. 252
pub.event.eda:event........................................................................................................ 254
pub.event.eda:eventToDocument.................................................................................... 255
pub.event.eda:schema_event..........................................................................................257
pub.event.eda:send......................................................................................................... 257
pub.event:error.................................................................................................................263
pub.event:errorInfo...........................................................................................................263
pub.event:exception.........................................................................................................264
pub.event:exceptionInfo...................................................................................................266
pub.event:gdEnd..............................................................................................................267
pub.event:gdEndInfo........................................................................................................268
pub.event:gdStart.............................................................................................................268
pub.event:gdStartInfo.......................................................................................................269
pub.event:getEventTypes................................................................................................ 270
pub.event:getSubscribers................................................................................................ 270
pub.event:jmsReceiveErrorEvent.................................................................................... 272
pub.event:jmsSendErrorEvent......................................................................................... 274
pub.event:journal............................................................................................................. 275
pub.event:journalInfo....................................................................................................... 276
pub.event:modifySubscriber............................................................................................ 278
pub.event.nerv:eventToDocument................................................................................... 282
pub.event.nerv:send........................................................................................................ 283
pub.event:portStatus........................................................................................................286
pub.event:portStatusInfo..................................................................................................286
pub.event:reloadEventManagerSettings..........................................................................287
pub.event:replication........................................................................................................287
pub.event:replicationInfo..................................................................................................288
pub.event:saveEventManagerSettings............................................................................ 289
pub.event:security............................................................................................................289
pub.event:securityInfo......................................................................................................291
pub.event:sessionEnd......................................................................................................292
pub.event:sessionEndInfo................................................................................................293
pub.event:sessionExpire..................................................................................................294
pub.event:sessionExpireInfo............................................................................................294
pub.event:sessionStart.................................................................................................... 295
pub.event:sessionStartInfo.............................................................................................. 296
pub.event:stat.................................................................................................................. 296
pub.event:statInfo............................................................................................................ 298
pub.event:txEnd............................................................................................................... 300
pub.event:txEndInfo......................................................................................................... 300
pub.event:txStart..............................................................................................................301
pub.event:txStartInfo........................................................................................................302
M
Table of Contents
File Folder.....................................................................................................................................303
File Access Control Configuration for the pub.file Services................................................... 304
Parameter Settings................................................................................................................. 304
Summary of Elements in this Folder......................................................................................305
pub.file:bytesToFile.......................................................................................................... 306
pub.file:checkFileExistence..............................................................................................307
pub.file:copyFile............................................................................................................... 307
pub.file:deleteFile.............................................................................................................308
pub.file:getFile..................................................................................................................309
pub.file:listFiles................................................................................................................ 310
pub.file:moveFile..............................................................................................................311
pub.file:readerToFile........................................................................................................ 312
pub.file:streamToFile........................................................................................................313
pub.file:stringToFile.......................................................................................................... 314
Flat File Folder............................................................................................................................. 317
Summary of Elements in the Flat File Folder........................................................................ 318
pub.flatFile:convertToString............................................................................................. 320
pub.flatFile:convertToValues............................................................................................ 325
pub.flatFile:FormatService............................................................................................... 331
pub.flatFile:getSupportedEncodings................................................................................ 334
pub.flatFile.generate:createDocumentType..................................................................... 335
pub.flatFile.generate:createFFDictionary.........................................................................335
pub.flatFile.generate:deleteFFDictionary......................................................................... 336
pub.flatFile.generate:deleteFFDictionaryEntry.................................................................337
pub.flatFile.generate:deleteFFSchema............................................................................338
pub.flatFile.generate:FFDictionary...................................................................................338
pub.flatFile.generate:FFSchema......................................................................................341
pub.flatFile.generate:findDependants.............................................................................. 344
pub.flatFile.generate:findReferences............................................................................... 344
pub.flatFile.generate:getFFDictionaryAsXML.................................................................. 345
pub.flatFile.generate:getFFDictionaryEntryAsXML..........................................................346
pub.flatFile.generate:getFFSchemaAsXML..................................................................... 346
pub.flatFile.generate:listFFDictionaryEntries................................................................... 347
pub.flatFile.generate:saveXMLAsFFDictionary................................................................348
pub.flatFile.generate:saveXMLAsFFSchema...................................................................349
pub.flatFile.generate:updateFFDictionaryEntryFromXML................................................351
Flow Folder...................................................................................................................................353
Summary of Elements in this Folder......................................................................................354
pub.flow:clearPipeline...................................................................................................... 356
pub.flow:debugLog...........................................................................................................356
pub.flow:getLastError.......................................................................................................357
pub.flow:getRetryCount................................................................................................... 358
pub.flow:getSession.........................................................................................................359
M
Table of Contents
pub.flow:getTransportInfo................................................................................................ 359
pub.flow:invokeService.................................................................................................... 360
pub.flow:restorePipeline...................................................................................................361
pub.flow:restorePipelineFromFile.....................................................................................362
pub.flow:savePipeline...................................................................................................... 363
pub.flow:savePipelineToFile.............................................................................................364
pub.flow:setCustomContextID......................................................................................... 365
pub.flow:setResponse......................................................................................................366
pub.flow:setResponse2....................................................................................................368
pub.flow:setResponseCode............................................................................................. 370
pub.flow:setResponseHeader..........................................................................................370
pub.flow:setResponseHeaders........................................................................................ 373
pub.flow:throwExceptionForRetry.................................................................................... 374
pub.flow:tracePipeline......................................................................................................375
pub.flow:transportInfo...................................................................................................... 375
Hashtable Folder..........................................................................................................................383
Summary of Elements in this Folder......................................................................................384
pub.hashtable:containsKey..............................................................................................384
pub.hashtable:createHashtable....................................................................................... 385
pub.hashtable:get............................................................................................................ 385
pub.hashtable:listKeys..................................................................................................... 385
pub.hashtable:put............................................................................................................ 386
pub.hashtable:remove..................................................................................................... 386
pub.hashtable:size........................................................................................................... 387
IO Folder....................................................................................................................................... 389
Summary of Elements in this Folder......................................................................................390
pub.io:bytesToStream...................................................................................................... 391
pub.io:close......................................................................................................................392
pub.io:createByteArray.................................................................................................... 392
pub.io:mark...................................................................................................................... 393
pub.io:markSupported......................................................................................................394
pub.io:read....................................................................................................................... 395
pub.io:readAsString......................................................................................................... 395
pub.io:readerToString.......................................................................................................396
pub.io:reset...................................................................................................................... 397
pub.io:skip........................................................................................................................397
pub.io:streamToBytes...................................................................................................... 398
pub.io:streamToReader....................................................................................................399
pub.io:streamToString...................................................................................................... 399
pub.io:stringToReader......................................................................................................400
pub.io:stringToStream...................................................................................................... 400
JDBC Folder................................................................................................................................. 401
Summary of Elements in this Folder......................................................................................402
M
Table of Contents
pub.jdbc:getPoolInfo........................................................................................................ 402
JMS Folder....................................................................................................................................405
Summary of Elements in This Folder.....................................................................................406
pub.jms:acknowledge...................................................................................................... 407
pub.jms:batchTriggerSpec............................................................................................... 408
pub.jms:createConsumer.................................................................................................408
pub.jms:documentResolverSpec..................................................................................... 412
pub.jms:JMSMessage......................................................................................................413
pub.jms:receive................................................................................................................416
pub.jms:reply....................................................................................................................421
pub.jms:send....................................................................................................................429
pub.jms:sendAndWait...................................................................................................... 439
pub.jms:sendBatch.......................................................................................................... 458
pub.jms:triggerSpec......................................................................................................... 467
pub.jms:waitForReply...................................................................................................... 467
pub.jms.wmjms:receiveStream........................................................................................ 472
pub.jms.wmjms:sendStream............................................................................................474
JSON Folder................................................................................................................................. 477
Data Type Mapping................................................................................................................ 478
Summary of Elements in This Folder.....................................................................................479
pub.json:documentToJSONString....................................................................................479
pub.json:jsonStreamToDocument.................................................................................... 480
pub.json:jsonStringToDocument...................................................................................... 481
List Folder.....................................................................................................................................483
Summary of Elements in this Folder......................................................................................484
pub.list:addItemToVector..................................................................................................484
pub.list:appendToDocumentList.......................................................................................485
pub.list:appendToStringList..............................................................................................486
pub.list:sizeOfList.............................................................................................................487
pub.list:stringListToDocumentList.................................................................................... 487
pub.list:vectorToArray...................................................................................................... 488
Math Folder...................................................................................................................................491
Summary of Elements in this Folder......................................................................................492
pub.math:absoluteValue...................................................................................................494
pub.math:addFloatList..................................................................................................... 494
pub.math:addFloats......................................................................................................... 495
pub.math:addIntList......................................................................................................... 496
pub.math:addInts............................................................................................................. 497
pub.math:addObjects.......................................................................................................497
pub.math:divideFloats......................................................................................................498
pub.math:divideInts..........................................................................................................499
pub.math:divideObjects................................................................................................... 500
10
M
Table of Contents
pub.math:max.................................................................................................................. 500
pub.math:min................................................................................................................... 501
pub.math:multiplyFloatList............................................................................................... 501
pub.math:multiplyFloats................................................................................................... 502
pub.math:multiplyIntList................................................................................................... 503
pub.math:multiplyInts....................................................................................................... 504
pub.math:multiplyObjects.................................................................................................505
pub.math:randomDouble................................................................................................. 505
pub.math:roundNumber................................................................................................... 506
pub.math:subtractFloats.................................................................................................. 506
pub.math:subtractInts...................................................................................................... 508
pub.math:subtractObjects................................................................................................ 508
pub.math:toNumber......................................................................................................... 509
Metadata Folder........................................................................................................................... 511
Summary of Elements in this Folder......................................................................................512
pub.metadata.assets:publishPackages........................................................................... 512
MIME Folder..................................................................................................................................515
Summary of Elements in this Folder......................................................................................516
pub.mime:addBodyPart................................................................................................... 517
pub.mime:addMimeHeader..............................................................................................521
pub.mime:createMimeData..............................................................................................523
pub.mime:getBodyPartContent........................................................................................526
pub.mime:getBodyPartHeader.........................................................................................527
pub.mime:getContentType...............................................................................................529
pub.mime:getEnvelopeStream.........................................................................................529
pub.mime:getMimeHeader...............................................................................................531
pub.mime:getNumParts................................................................................................... 532
pub.mime:getPrimaryContentType.................................................................................. 533
pub.mime:getSubContentType........................................................................................ 534
pub.mime:mergeHeaderAndBody....................................................................................535
OAuth Folder................................................................................................................................ 537
Summary of Elements in this Folder......................................................................................538
pub.oauth:authorize......................................................................................................... 538
pub.oauth:getAccessToken..............................................................................................540
pub.oauth:refreshAccessToken........................................................................................542
Packages Folder.......................................................................................................................... 545
Summary of Elements in this Folder......................................................................................546
pub.packages:activatePackage....................................................................................... 546
pub.packages:backupPackage........................................................................................ 547
pub.packages:disablePackage........................................................................................ 548
pub.packages:enablePackage.........................................................................................549
pub.packages:installPackage.......................................................................................... 549
11
M
Table of Contents
pub.packages:recoverPackage........................................................................................551
pub.packages:reloadPackage..........................................................................................552
PKI Folder..................................................................................................................................... 553
Summary of Elements in this Folder......................................................................................554
pub.pki.pkcs7:sign........................................................................................................... 554
pub.pki.pkcs7:verify......................................................................................................... 556
pub.pki.smime.createSignedAndEncryptedData..............................................................557
pub.pki.smime.createSignedData.................................................................................... 559
pub.pki.smime:processEncryptedData............................................................................ 559
pub.pki.smime:processSignedData................................................................................. 561
Publish Folder.............................................................................................................................. 565
Summary of Elements in this Folder......................................................................................566
pub.publish:deliver........................................................................................................... 567
pub.publish:deliverAndWait..............................................................................................568
pub.publish:documentResolverSpec............................................................................... 571
pub.publish:envelope....................................................................................................... 573
pub.publish:getRedeliveryCount...................................................................................... 578
pub.publish:publish.......................................................................................................... 580
pub.publish:publishAndWait.............................................................................................582
pub.publish:reply..............................................................................................................586
pub.publish:syncToBroker................................................................................................588
pub.publish:waitForReply.................................................................................................589
pub.publish.notification:error............................................................................................591
Remote Folder..............................................................................................................................593
Summary of Elements in this Folder......................................................................................594
pub.remote:invoke........................................................................................................... 595
pub.remote.gd:end...........................................................................................................597
pub.remote.gd:getStatus..................................................................................................597
pub.remote.gd:invoke...................................................................................................... 598
pub.remote.gd:restart.......................................................................................................599
pub.remote.gd:retrieve.....................................................................................................599
pub.remote.gd:send......................................................................................................... 600
pub.remote.gd:start..........................................................................................................600
pub.remote.gd:submit...................................................................................................... 601
Replicator Folder......................................................................................................................... 603
Summary of Elements in this Folder......................................................................................604
pub.replicator:addReleaseRegistryEntry..........................................................................605
pub.replicator:deleteReleaseRegistryEntry......................................................................606
pub.replicator:distributeViaFTP........................................................................................607
pub.replicator:distributeViaSvcPull...................................................................................608
pub.replicator:distributeViaSvcPush................................................................................ 609
pub.replicator:generateReplicationEvent......................................................................... 609
12
M
Table of Contents
pub.replicator:getLocalReleasedList................................................................................609
pub.replicator:getRemoteReleasedList............................................................................610
pub.replicator:notifyPackageRelease.............................................................................. 611
pub.replicator:packageCreation....................................................................................... 612
Report Folder............................................................................................................................... 615
Summary of Elements in this Folder......................................................................................616
pub.report:runFileTemplate.............................................................................................. 616
pub.report:runFileTemplateOnPipe.................................................................................. 617
pub.report:runStringTemplate.......................................................................................... 617
pub.report:runStringTemplateOnPipe.............................................................................. 618
pub.report:runTemplate....................................................................................................618
pub.report:runTemplateOnPipe........................................................................................619
Scheduler Folder..........................................................................................................................621
Summary of Elements in this Folder......................................................................................622
pub.scheduler:addComplexTask......................................................................................623
pub.scheduler:addOneTimeTask..................................................................................... 626
pub.scheduler:addRepeatingTask....................................................................................628
pub.scheduler:cancelTask................................................................................................631
pub.scheduler:getTaskIDs................................................................................................631
pub.scheduler:getTaskInfo............................................................................................... 632
pub.scheduler:getUserTaskList........................................................................................636
pub.scheduler:migrateTasksToJDBC............................................................................... 636
pub.scheduler:resumeTask.............................................................................................. 637
pub.scheduler:suspendTask............................................................................................ 638
pub.scheduler:updateComplexTask.................................................................................639
pub.scheduler:updateOneTimeTask................................................................................ 642
pub.scheduler:updateRepeatingTask...............................................................................644
Schema Folder............................................................................................................................. 649
Summary of Elements in this Folder......................................................................................650
pub.schema:createXSD................................................................................................... 651
pub.schema:validate........................................................................................................ 653
pub.schema:validatePipeline........................................................................................... 656
pub.schema.w3c.............................................................................................................. 657
pub.schema.w3c:datatypes............................................................................................. 657
pub.schema.w3c:structures............................................................................................. 657
pub.schema.w3c:xml....................................................................................................... 657
pub.schema.w3c:xsi.........................................................................................................657
Security Folder.............................................................................................................................659
About the Security Elements..................................................................................................660
Summary of Elements in this Folder......................................................................................661
pub.security:clearKeyAndChain.......................................................................................663
pub.security:setKeyAndChain..........................................................................................664
13
M
Table of Contents
pub.security:setKeyAndChainFromBytes.........................................................................665
pub.security.enterpriseGateway:alertSpec.......................................................................666
pub.security.keystore:getCertificate................................................................................. 668
pub.security.keystore:getKeyAndChain........................................................................... 669
pub.security.keystore:getTrustedCertificates................................................................... 669
pub.security.keystore:setKeyAndChain............................................................................670
pub.security.keystore.pkcs7:sign..................................................................................... 670
pub.security.outboundPasswords:setPassword...............................................................671
pub.security.outboundPasswords:getPassword...............................................................673
pub.security.outboundPasswords:listKeys....................................................................... 674
pub.security.outboundPasswords:removePassword........................................................674
pub.security.outboundPasswords:updatePassword.........................................................675
pub.security.pkcs7:sign....................................................................................................675
pub.security.pkcs7:verify..................................................................................................677
pub.security.util:createMessageDigest.............................................................................678
pub.security.util:getCertificateInfo.................................................................................... 679
pub.security.util:loadPKCS7CertChain.............................................................................680
pub.security.util:createSecureString.................................................................................680
pub.security.util:convertSecureString...............................................................................681
pub.security.util:destroySecureString...............................................................................682
pub.security.xml:decryptXML........................................................................................... 682
pub.security.xml:encryptXML........................................................................................... 684
pub.security.xml:signXML................................................................................................ 686
pub.security.xml:verifyXML.............................................................................................. 692
SMIME Folder............................................................................................................................... 695
Summary of Elements in this Folder......................................................................................696
pub.smime:createCertsOnlyData.....................................................................................697
pub.smime:createEncryptedData.....................................................................................697
pub.smime:createSignedAndEncryptedData................................................................... 698
pub.smime:createSignedData..........................................................................................700
pub.smime:processCertsOnlyData.................................................................................. 702
pub.smime:processEncryptedData.................................................................................. 702
pub.smime:processSignedData....................................................................................... 703
pub.smime.keystore:createSignedAndEncryptedData.....................................................706
pub.smime.keystore:createSignedData........................................................................... 708
pub.smime.keystore:processEncryptedData....................................................................708
SOAP Folder.................................................................................................................................711
Summary of Elements in this Folder......................................................................................712
pub.soap.handler:addBodyBlock..................................................................................... 721
pub.soap.handler:addFaultBlock..................................................................................... 724
pub.soap.handler:addHeaderBlock..................................................................................726
pub.soap.handler:addHeaderElement............................................................................. 730
pub.soap.handler:generateDocumentTypesFromWSDL................................................. 733
pub.soap.handler:getBodyBlock...................................................................................... 735
webMethods Integration Server Built-In Services Reference Version 9.6
14
M
Table of Contents
pub.soap.handler:getBodyBlockQNames........................................................................ 737
pub.soap.handler:getFaultBlock...................................................................................... 738
pub.soap.handler:getHeaderBlock...................................................................................740
pub.soap.handler:getHeaderBlockQNames.................................................................... 742
pub.soap.handler:getHeaderElement.............................................................................. 743
pub.soap.handler:getInitialSOAPRequest....................................................................... 746
pub.soap.handler:getMessageAddressingProperties...................................................... 747
pub.soap.handler:getProperty..........................................................................................749
pub.soap.handler:getServicePipeline.............................................................................. 750
pub.soap.handler:getSOAPMessage...............................................................................752
pub.soap.handler:getWebServiceInvocationProperties................................................... 753
pub.soap.handler:handlerSpec........................................................................................ 755
pub.soap.handler:hasFaultMessage................................................................................756
pub.soap.handler:listConsumer....................................................................................... 757
pub.soap.handler:listProvider.......................................................................................... 758
pub.soap.handler:registerConsumer................................................................................759
pub.soap.handler:registerProvider...................................................................................760
pub.soap.handler:registerWmConsumer......................................................................... 760
pub.soap.handler:registerWmProvider.............................................................................762
pub.soap.handler:removeBodyBlock............................................................................... 763
pub.soap.handler:removeHeaderBlock............................................................................764
pub.soap.handler:removeHeaderElement....................................................................... 766
pub.soap.handler:removeProperty...................................................................................767
pub.soap.handler:setProperty..........................................................................................768
pub.soap.handler:setSOAPMessage...............................................................................769
pub.soap.handler:unregisterConsumer............................................................................769
pub.soap.handler:unregisterProvider...............................................................................770
pub.soap.handler:updateFaultBlock................................................................................ 770
pub.soap.processor:list.................................................................................................... 772
pub.soap.processor:processMessage............................................................................. 774
pub.soap.processor:processRPCMessage......................................................................774
pub.soap.processor:registerProcessor............................................................................ 775
pub.soap.processor:unregisterProcessor........................................................................ 776
pub.soap.schema:encoding............................................................................................. 777
pub.soap.schema:encoding_1_2..................................................................................... 777
pub.soap.schema:envelope............................................................................................. 777
pub.soap.schema:envelope_1_2..................................................................................... 777
pub.soap.utils:addBodyEntry........................................................................................... 777
pub.soap.utils:addHeaderEntry........................................................................................779
pub.soap.utils:addTrailer..................................................................................................781
pub.soap.utils:callbackServiceSpec.................................................................................782
pub.soap.utils:convertToVersionSpecificSOAPFault........................................................782
pub.soap.utils:createSoapData........................................................................................787
pub.soap.utils:createXOPObject......................................................................................788
pub.soap.utils:exitUnableToUnderstand.......................................................................... 789
15
M
Table of Contents
pub.soap.utils:getActor.................................................................................................... 790
pub.soap.utils:getBody.....................................................................................................791
pub.soap.utils:getBodyEntries......................................................................................... 791
pub.soap.utils:getDocument............................................................................................ 792
pub.soap.utils:getEncoding..............................................................................................793
pub.soap.utils:getHeader................................................................................................. 793
pub.soap.utils:getHeaderEntries......................................................................................794
pub.soap.utils:getMustUnderstand.................................................................................. 795
pub.soap.utils:getQName................................................................................................ 796
pub.soap.utils:getTrailers................................................................................................. 797
pub.soap.utils:getXOPObjectContent.............................................................................. 798
pub.soap.utils:QName..................................................................................................... 799
pub.soap.utils:removeBodyEntry..................................................................................... 800
pub.soap.utils:removeHeaderEntry..................................................................................801
pub.soap.utils:removeTrailer............................................................................................802
pub.soap.utils:requestResponseSpec............................................................................. 803
pub.soap.utils:resetWSDEffectivePolicy.......................................................................... 803
pub.soap.utils.setWSDEffectivePolicy............................................................................. 804
pub.soap.utils:soapDataToBytes......................................................................................805
pub.soap.utils:soapDataToString..................................................................................... 805
pub.soap.utils:soapFault.................................................................................................. 806
pub.soap.utils:streamToSoapData................................................................................... 807
pub.soap.utils:stringToSoapData..................................................................................... 808
pub.soap.utils:validateSoapData..................................................................................... 809
pub.soap.wsa:action........................................................................................................ 810
pub.soap.wsa:faultTo....................................................................................................... 810
pub.soap.wsa:from...........................................................................................................812
pub.soap.wsa:messageID................................................................................................813
pub.soap.wsa:problemAction...........................................................................................813
pub.soap.wsa:problemHeaderQName.............................................................................814
pub.soap.wsa:problemIRI................................................................................................ 814
pub.soap.wsa:relatesTo................................................................................................... 815
pub.soap.wsa:replyTo...................................................................................................... 816
pub.soap.wsa:retryAfter................................................................................................... 817
pub.soap.wsa:to...............................................................................................................817
pub.soap.wsa:schema_wsa.............................................................................................818
pub.soap.wsa.submission:action..................................................................................... 818
pub.soap.wsa.submission:faultTo.................................................................................... 819
pub.soap.wsa.submission:from........................................................................................821
pub.soap.wsa.submission:messageID.............................................................................822
pub.soap.wsa.submission:relatesTo................................................................................ 823
pub.soap.wsa.submission:replyTo................................................................................... 824
pub.soap.wsa.submission:retryAfter................................................................................ 826
pub.soap.wsa.submission:to............................................................................................826
pub.soap.wsa.submission:schema_wsa_submission......................................................827
16
M
Table of Contents
pub.soap.wsrm:closeSequence....................................................................................... 827
pub.soap.wsrm:createSequence..................................................................................... 828
pub.soap.wsrm:sendAcknowledgementRequest............................................................. 833
pub.soap.wsrm:terminateSequence................................................................................ 834
pub.soap.wsrm:waitUntilSequenceCompleted.................................................................836
Storage Folder..............................................................................................................................839
About the Storage Elements.................................................................................................. 840
Locking Considerations.......................................................................................................... 841
Entry Locking...................................................................................................................841
Data Store Locking..........................................................................................................841
Automatic Promotion to Exclusive Lock..........................................................................842
Wait Time and Duration.................................................................................................. 842
Sample Flow Service for Checkpoint Restart.........................................................................843
Summary of Elements in this Folder......................................................................................844
pub.storage:add............................................................................................................... 845
pub.storage:closeStore.................................................................................................... 846
pub.storage:deleteStore...................................................................................................846
pub.storage:get................................................................................................................ 847
pub.storage:keys..............................................................................................................848
pub.storage:listLocks....................................................................................................... 849
pub.storage:lock...............................................................................................................850
pub.storage:put................................................................................................................ 852
pub.storage:registerStore................................................................................................ 853
pub.storage:releaseLocks................................................................................................853
pub.storage:remove......................................................................................................... 854
pub.storage:shutdown......................................................................................................855
pub.storage:startup.......................................................................................................... 855
pub.storage:unlock...........................................................................................................855
String Folder.................................................................................................................................857
Summary of Elements in this Folder......................................................................................858
pub.string:base64Decode................................................................................................ 860
pub.string:base64Encode................................................................................................ 860
pub.string:bytesToString.................................................................................................. 861
pub.string:concat..............................................................................................................861
pub.string:HTMLDecode.................................................................................................. 862
pub.string:HTMLEncode.................................................................................................. 862
pub.string:indexOf............................................................................................................863
pub.string:length.............................................................................................................. 864
pub.string:lookupDictionary..............................................................................................864
pub.string:lookupTable..................................................................................................... 865
pub.string:makeString...................................................................................................... 866
pub.string:messageFormat.............................................................................................. 866
pub.string:numericFormat................................................................................................ 867
pub.string:objectToString................................................................................................. 868
webMethods Integration Server Built-In Services Reference Version 9.6
17
M
Table of Contents
pub.string:padLeft............................................................................................................ 869
pub.string:padRight..........................................................................................................870
pub.string:replace............................................................................................................ 871
pub.string:stringToBytes...................................................................................................871
pub.string:substring..........................................................................................................872
pub.string:tokenize...........................................................................................................872
pub.string:toLower........................................................................................................... 873
pub.string:toUpper........................................................................................................... 873
pub.string:trim.................................................................................................................. 874
pub.string:URLDecode.....................................................................................................874
pub.string:URLEncode.....................................................................................................875
Sync Folder.................................................................................................................................. 877
Summary of Elements in this Folder......................................................................................878
pub.sync:notify................................................................................................................. 878
pub.sync:shutdown.......................................................................................................... 879
pub.sync:wait................................................................................................................... 879
Synchronization Folder............................................................................................................... 881
Summary of Elements in this Folder......................................................................................882
pub.synchronization.latch:closeLatch.............................................................................. 882
pub.synchronization.latch:isLatchClosed.........................................................................883
pub.synchronization.latch:openLatch...............................................................................884
pub.synchronization.xref:createXReference.................................................................... 885
pub.synchronization.xref:deleteByObjectId......................................................................886
pub.synchronization.xref:deleteXReference.................................................................... 886
pub.synchronization.xref:getCanonicalKey......................................................................887
pub.synchronization.xref:getNativeId...............................................................................888
pub.synchronization.xref:insertXReference..................................................................... 889
Trigger Folder...............................................................................................................................891
Summary of Elements in this Folder......................................................................................892
pub.trigger:createJMSTrigger.......................................................................................... 893
pub.trigger:createTrigger..................................................................................................907
pub.trigger:deleteJMSTrigger...........................................................................................916
pub.trigger:deleteTrigger..................................................................................................916
pub.trigger:disableJMSTriggers....................................................................................... 917
pub.trigger:enableJMSTriggers........................................................................................919
pub.trigger:resourceMonitoringSpec................................................................................920
pub.trigger:resumeProcessing......................................................................................... 921
pub.trigger:resumeRetrieval.............................................................................................924
pub.trigger:suspendJMSTriggers..................................................................................... 926
pub.trigger:suspendProcessing....................................................................................... 928
pub.trigger:suspendRetrieval........................................................................................... 930
TX Folder...................................................................................................................................... 933
18
M
Table of Contents
19
M
Table of Contents
Index............................................................................................................................................ 1017
20
Odd Header
ART Folder
Cache Folder
Client Folder
Date Folder
Db Folder
Document Folder
Event Folder
File Folder
21
Even Header
Folder
Flow Folder
Hashtable Folder
IO Folder
JDBC Folder
JMS Folder
JSON Folder
List Folder
Math Folder
Metadata Folder
MIME Folder
OAuth Folder
Packages Folder
PKI Folder
22
Odd Header
Folder
Publish Folder
Remote Folder
Replicator Folder
Report Folder
Scheduler Folder
Schema Folder
Security Folder
SMIME Folder
SOAP Folder
Storage Folder
String Folder
Sync Folder
Synchronization
Folder
Trigger Folder
23
Even Header
Folder
TX Folder
UniversalName
Folder
Utils Folder
VCS Folder
XML Folder
XSLT Folder
List
Developers
Read
WmPrivate
Write
WmPrivate
Execute
Internal
24
Odd Header
These default access permissions cannot be changed (that is, another ACL cannot be
selected).
Document Conventions
Convention
Description
Bold
Narrowfont
UPPERCASE
Italic
Monospace
font
{}
Indicates a set of choices from which you must choose one. Type
only the information inside the curly braces. Do not type the { }
symbols.
[]
...
Indicates that you can type multiple options of the same type.
Type only the information. Do not type the ellipsis (...).
Documentation Installation
You can download the product documentation using the Software AG Installer. The
documentation is downloaded to a central directory named _documentation in the main
installation directory (SoftwareAG by default).
25
Even Header
Online Information
SoftwareAG Documentation Website
You can nd documentation on the Software AG Documentation website at hp://
documentation.softwareag.com. The site requires Empower credentials. If you do not
have Empower credentials, you must use the TECHcommunity website.
Software AG Empower Product Support Website
You can nd product information on the Software AG Empower Product Support
website at hps://empower.softwareag.com.
To submit feature/enhancement requests, get information about product availability,
and download products and certied samples, go to Products.
To get information about xes and to read early warnings, technical papers, and
knowledge base articles, go to the Knowledge Center.
Software AG TECHcommunity
You can nd documentation and other technical information on the Software AG
TECHcommunity website at hp://techcommunity.softwareag.com. You can:
Access product documentation, if you have TECHcommunity credentials. If you do
not, you will need to register and specify "Documentation" as an area of interest.
Access articles, demos, and tutorials.
Use the online discussion forums, moderated by Software AG professionals, to
ask questions, discuss best practices, and learn how other customers are using
Software AG technology.
Link to external websites that discuss open standards and web technology.
26
Odd Header
ART Folder
1 ART Folder
Summary of Elements in this Folder ...........................................................................................
28
27
Even Header
ART Folder
You use the elements in the art folder to manage adapter components, including
connections, adapter services, listeners, and notications.
pub.art:listRegisteredAdapters
pub.art.connection:disableConnection
pub.art.connection:enableConnection
pub.art.connection:getConnectionStatistics
pub.art.connection:listAdapterConnections
pub.art.connection:queryConnectionState
pub.art.listener:disableListener
pub.art.listener:enableListener
pub.art.listener:listAdapterListeners
pub.art.listener:queryListenerState
28
Odd Header
ART Folder
Element
pub.art.listener:resumeListener
pub.art.listener:setListenerNodeConnection
pub.art.listener:suspendListener
pub.art.notification:disableListenerNotification
pub.art.notification:disablePollingNotification
pub.art.notification:enableListenerNotification
pub.art.notification:enablePollingNotification
pub.art.notification:listAdapterListenerNotifications
pub.art.notification:listAdapterPollingNotifications
pub.art.notification:queryListenerNotificationState
pub.art.notification:queryPollingNotificationState
pub.art.notification:resumePollingNotification
pub.art.notification:setListenerNotificationNodeListener
29
Even Header
ART Folder
Element
pub.art.notification:setPollingNotificationNodeConnection
pub.art.notification:suspendPollingNotification
pub.art.service:listAdapterServices
pub.art.service:setAdapterServiceNodeConnection
pub.art.transaction:commitTransaction
pub.art.transaction:rollbackTransaction
pub.art.transaction:setTransactionTimeout
pub.art.transaction:startTransaction
pub.art:listRegisteredAdapters
WmART. Returns the display name and adapter type name of all registered adapters.
Input Parameters
None.
Output Parameters
registeredAdapterList
30
Odd Header
ART Folder
Key
Description
adapterDisplayName
adapterTypeName
pub.art.connection:disableConnection
WmART. Disables a connection node.
Input Parameters
connectionAlias
Output Parameters
None.
See Also
pub.art.connection:enableConnection
pub.art.connection:enableConnection
WmART. Enables an existing connection node.
Input Parameters
connectionAlias
Output Parameters
None.
See Also
pub.art.connection:disableConnection
31
Even Header
ART Folder
pub.art.connection:getConnectionStatistics
WmART. Returns current usage statistics for a connection node.
Input Parameters
aliasName
String Name of the connection node for which you want usage
statistics returned.
Output Parameters
connectionStatistics
Description
TotalConnections
BusyConnections
FreeConnections
TotalHits
TotalMisses
See Also
pub.art.connection:queryConnectionState
pub.art.connection:listAdapterConnections
WmART. Lists connection nodes associated with a specied adapter.
32
Odd Header
ART Folder
Input Parameters
adapterTypeName
Output Parameters
connectionDataList
Description
connectionAlias
packageName
connectionState
pub.art.connection:queryConnectionState
WmART. Returns the current connection state (enabled/disabled) and error status for a
connection node.
33
Even Header
ART Folder
Input Parameters
connectionAlias
String Name of the connection node for which you want the
connection state and error status returned.
Output Parameters
connectionState
hasError
See Also
pub.art.connection:getConnectionStatistics
pub.art.connection:enableConnection
pub.art.connection:disableConnection
pub.art.listener:disableListener
WmART. Disables a listener.
Input Parameters
listenerName
forceDisable
Output Parameters
None.
34
Odd Header
ART Folder
See Also
pub.art.listener:enableListener
pub.art.listener:enableListener
WmART. Enables an existing listener.
Input Parameters
listenerName
Output Parameters
None.
Usage Notes
If you do not enable the connection resource associated with the listener, this service will
return without performing any action, and the listener will remain disabled. Therefore,
you should invoke pub.art.listener:queryListenerState before calling this service to conrm
that the listener has been enabled.
See Also
pub.art.listener:queryListenerState
pub.art.listener:disableListener
pub.art.listener:listAdapterListeners
WmART. Lists listeners associated with a specied adapter.
Input Parameters
adapterTypeName
Output Parameters
listenerDataList
35
Even Header
ART Folder
Key
Description
listenerNodeName
packageName
listenerEnabled
process of starting.
process of disabling.
process of suspending.
See Also
pub.art:listRegisteredAdapters
pub.art.listener:queryListenerState
pub.art.listener:queryListenerState
WmART. Returns the current state for a listener.
Input Parameters
listenerName
String Name of the listener for which you want the current
state returned.
Output Parameters
listenerState
String Current state of the listener. The state will have one of
these values:
disabled if the listener is disabled.
enabled if the listener is enabled.
36
Odd Header
ART Folder
suspending.
See Also
pub.art.listener:enableListener
pub.art.listener:disableListener
pub.art.listener:resumeListener
WmART. Resumes a specied listener.
Input Parameters
listenerName
Output Parameters
None.
Usage Notes
If the requested transition is not valid (for example, trying to resume a disabled listener
or a listener that is already resumed), the service ignores the request.
After you use this service, you can use pub.art.listener:queryListenerState to verify
pub.art.listener:resumeListener correctly changed the state of the listener.
See Also
pub.art.listener:queryListenerState
pub.art.listener:suspendListener
pub.art.listener:setListenerNodeConnection
WmART. Changes the connection node used by a specied listener.
37
Even Header
ART Folder
Input Parameters
listenerName
String Name of the listener for which you want to change the
connection node.
connectionAlias
Output Parameters
None.
Usage Notes
Calling this service for a listener that is disabled is permied.
Calling this service for a listener that is suspended changes the state of the listener to
disabled. The user must enable the listener before using it.
See Also
pub.art.listener:disableListener
pub.art.listener:suspendListener
WmART. Suspends a specied listener.
Input Parameters
listenerName
Output Parameters
None.
Usage Notes
If the requested transition is not valid (for example, trying to suspend a disabled listener
or a listener that is already suspended), the service ignores the request.
After you use this service, you can use pub.art.listener:queryListenerState to verify
pub.art.listener:suspendListener correctly changed the state of the listener.
See Also
pub.art.listener:queryListenerState
38
Odd Header
ART Folder
pub.art.listener:resumeListener
pub.art.notification:disableListenerNotification
WmART. Disables a listener notication.
Input Parameters
noticationName
Output Parameters
None.
See Also
pub.art.notification:enableListenerNotification
pub.art.notification:disablePollingNotification
WmART. Disables a polling notication.
Input Parameters
noticationName
Output Parameters
None.
See Also
pub.art.notification:enablePollingNotification
pub.art.notification:enableListenerNotification
WmART. Enables an existing listener notication.
39
Even Header
ART Folder
Input Parameters
noticationName
Output Parameters
None.
See Also
pub.art.notification:disableListenerNotification
pub.art.notification:enablePollingNotification
WmART. Enables an existing polling notication.
Input Parameters
noticationName
Output Parameters
None.
Usage Notes
You must schedule the polling notication before you can run this service. See your
adapter user documentation for instructions to schedule the polling notication.
See Also
pub.art.notification:disablePollingNotification
pub.art.notification:listAdapterListenerNotifications
WmART. Lists the listener notications associated with a specied adapter.
Input Parameters
adapterTypeName
40
Odd Header
ART Folder
Output Parameters
noticationDataList
Description
noticationNodeName
packageName
noticationEnabled
disabled.
enabled.
See Also
pub.art:listRegisteredAdapters
pub.art.notification:queryListenerNotificationState
pub.art.notification:listAdapterPollingNotifications
WmART. Lists the polling notications associated with a specied adapter.
Input Parameters
adapterTypeName
Output Parameters
noticationDataList
41
Even Header
ART Folder
Key
Description
noticationNodeName
packageName
noticationEnabled
disabled.
enabled.
is suspended.
See Also
pub.art:listRegisteredAdapters
pub.art.notification:queryPollingNotificationState
pub.art.notification:queryListenerNotificationState
WmART. Returns the current state (enabled/disabled) for a listener notication.
Input Parameters
noticationName
String The name of the listener notication for which you want
the current state (enabled/disabled) returned.
Output Parameters
noticationState
42
Odd Header
ART Folder
See Also
pub.art.notification:enableListenerNotification
pub.art.notification:disableListenerNotification
pub.art.notification:queryPollingNotificationState
WmART. Returns the current state for a polling notication.
Input Parameters
noticationName
String The name of the polling notication for which you want
the current state and schedule seings returned.
Output Parameters
noticationState
scheduleSeings
Description
noticationInterval
noticationOverlap
overlap.
noticationImmediate
immediately.
43
Even Header
ART Folder
immediately.
See Also
pub.art.notification:enablePollingNotification
pub.art.notification:disablePollingNotification
pub.art.notification:resumePollingNotification
WmART. Resumes a specied polling notication node.
Input Parameters
noticationName
Output Parameters
None.
Usage Notes
If the requested transition is not valid (for example, trying to resume a disabled polling
notication or a polling notication that is already resumed), the service ignores the
request.
After you use this service, you can use pub.art.notification:queryPollingNotificationState to
verify pub.art.notification:resumePollingNotification correctly changed the state of the polling
notication to enabled.
See Also
pub.art.notification:queryPollingNotificationState
pub.art.notification:suspendPollingNotification
pub.art.notification:setListenerNotificationNodeListener
WmART. Changes the listener used by a specied listener notication.
44
Odd Header
ART Folder
Input Parameters
noticationName
listenerNode
Output Parameters
None.
Usage Notes
This service returns an error if the listener notication is enabled.
You can use this service for synchronous and asynchronous listener notications.
See Also
pub.art.notification:disableListenerNotification
pub.art.notification:setPollingNotificationNodeConnection
WmART. Changes the connection node used by a specied polling notication.
Input Parameters
noticationName
connectionAlias
Output Parameters
None.
Usage Notes
The polling notication must be in a disabled or suspended state before you call this
service. This service returns an error if the polling notication is enabled.
If you use this service on a suspended polling notication, the service changes the state
of the polling notication to disabled.
45
Even Header
ART Folder
See Also
pub.art.notification:disablePollingNotification
pub.art.notification:suspendPollingNotification
WmART. Suspends a specied polling notication.
Input Parameters
noticationName
Output Parameters
None.
Usage Notes
If the requested transition is not valid (for example, trying to suspend a disabled polling
notication or a polling notication that is already suspended), the service ignores the
request.
After you use this service, you can use pub.art.notification:queryPollingNotificationState to
verify pub.art.notification:suspendPollingNotification correctly changed the state of the polling
notication to suspended.
See Also
pub.art.notification:queryPollingNotificationState
pub.art.notification:resumePollingNotification
pub.art.service:listAdapterServices
WmART. Lists adapter services associated with a specied adapter.
Input Parameters
adapterTypeName
46
Odd Header
ART Folder
Output Parameters
serviceDataList
Description
serviceNodeName
packageName
See Also
pub.art:listRegisteredAdapters
pub.art.service:setAdapterServiceNodeConnection
WmART. Changes the connection node used by a specied adapter service.
Input Parameters
serviceName
connectionAlias
Output Parameters
None.
Usage Notes
The new connection node must be enabled before you call this service.
See Also
pub.art.connection:enableConnection
pub.art.transaction:commitTransaction
WmART. Commits an explicit transaction.
47
Even Header
ART Folder
Input Parameters
commitTransactionInput
Description
transactionName
Output Parameters
None.
Usage Notes
This service is available only if your adapter supports built-in transaction management
services, which you can conrm by checking the user guide for the adapter.
This service must be used in conjunction with the pub.art.transaction:startTransaction
service. If the transactionName parameter was not provided in a prior call to
pub.art.transaction:startTransaction, a run-time error will be returned.
See Also
pub.art.transaction:startTransaction
pub.art.transaction:rollbackTransaction
pub.art.transaction:rollbackTransaction
WmART. Rolls back an explicit transaction.
Input Parameters
rollbackTransactionInput
Description
48
Odd Header
ART Folder
transactionName
Output Parameters
None.
Usage Notes
This service is available only if your adapter supports built-in transaction management
services, which you can conrm by checking the adapter's user guide.
This service must be used in conjunction with the pub.art.transaction:startTransaction
service. If the given transactionName parameter was not provided in a prior call to
pub.art.transaction:startTransaction, a run-time error will be returned.
See Also
pub.art.transaction:startTransaction
pub.art.transaction:commitTransaction
pub.art.transaction:setTransactionTimeout
WmART. Manually sets a transaction timeout interval for implicit and explicit
transactions.
Input Parameters
timeoutSeconds
Output Parameters
None.
49
Even Header
ART Folder
Usage Notes
This service is available only if your adapter supports built-in transaction management
services, which you can conrm by checking the user guide for the adapter.
When you use this service, you are temporarily overriding the Integration Server
transaction timeout interval.
You must call this service within a ow before the start of any implicit or explicit
transactions. Implicit transactions start when you call an adapter service in a ow.
Explicit transactions start when you call the pub.art.transaction:startTransaction service.
If the execution of a transaction takes longer than the transaction timeout interval, all
transacted operations are rolled back.
This service only overrides the transaction timeout interval for the ow service in which
you call it.
See Also
pub.art.transaction:startTransaction
pub.art.transaction:startTransaction
WmART. Starts an explicit transaction.
Input Parameters
startTransactionInput
Description
transactionName
Output Parameters
startTransactionOutput
50
Odd Header
ART Folder
Key
Description
transactionName
Usage Notes
This service is available only if your adapter supports built-in transaction management
services, which you can conrm by checking the user guide for the adapter.
This service is intended for use with the pub.art.transaction:commitTransaction or
pub.art.transaction:rollbackTransaction service. The transactionName value returned by a
call to this service can be provided to pub.art.transaction:commitTransaction (to commit the
transaction) or pub.art.transaction:rollbackTransaction (to roll back the transaction).
See Also
pub.art.transaction:commitTransaction
pub.art.transaction:rollbackTransaction
51
Even Header
52
Odd Header
Cache Folder
2 Cache Folder
About Checkpoint Restart ............................................................................................................
54
55
53
Even Header
Cache Folder
You use the elements in the cache folder to place data in a cache and retrieve it again
later. You can also use the services in the cache folder to perform administrative
operations such as enabling, disabling, and clearing a cache, or to implement checkpoint
restart in services you write. Integration Server uses Ehcache internally for all of the
services in the cache folder. Before using these services, you need create a cache manager
and cache using Integration Server Administrator. For more information about creating
a cache manager and cache, see webMethods Integration Server Administrators Guide.
Note: The key you use for the services in the cache folder must be an object that
overrides the equals() method from java.lang.Object. Failure to use such an object can
cause the service to return incorrect results.
Note: You cannot use an IS document object as a key for storing objects in the cache
because IS document objects do not implement the equals() method.
54
Odd Header
Cache Folder
pub.cache:containsKey
55
Even Header
Cache Folder
Element
pub.cache:get
pub.cache:getKeys
pub.cache:put
pub.cache:remove
pub.cache:search
pub.cache.admin:clearAllCaches
pub.cache.admin:clearCache
pub.cache.admin:disableCache
pub.cache.admin:enableCache
pub.cache.admin:evictExpiredElements
pub.cache.admin:isCacheDisabled
pub.cache.atomic:putIfAbsent
pub.cache.atomic:remove
56
Odd Header
Cache Folder
Element
pub.cache.atomic:replace
pub.cache.atomic:replaceIfKeyExists
pub.cache.bulk:isClusterBulkLoadEnabled
pub.cache.bulk:isNodeBulkLoadEnabled
pub.cache.bulk:setNodeBulkLoadEnabled
pub.cache.bulk:waitUntilClusterBulkLoadComplete
pub.cache.lock:acquireLock
pub.cache.lock:isLockedByCurrentThread
pub.cache.lock:releaseLock
57
Even Header
Cache Folder
pub.cache:containsKey
WmPublic. Checks whether an element with the specied key exists in the cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the key. This parameter
is case sensitive.
key
Output Parameters
found
Usage Notes
The pub.cache:containsKey service does not verify whether the element is expired. If
the element of the specied key is expired, and the element is present in the cache,
pub.cache:containsKey returns found with a value of true.
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache:get
WmPublic. Retrieves the value of a cached element for the specied key.
58
Odd Header
Cache Folder
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
key
useLoader
Usage Notes
If useLoader is set to false and pub.cache:get nds the key in the cache, the results contain
the value of the element. If the key does not exist in the cache, pub.cache:get returns a null
in the value parameter.
If useLoader is set to true and pub.cache:get cannot nd the specied key in the cache, it
uses the congured cache loader to nd the key in the system-of-record (SOR). If the
SOR contains the key, pub.cache:get returns the value of the element. If the key does not
exist in the SOR, pub.cache:get returns a null in the value parameter.
The pub.cache:get service returns a null in the value parameter if:
You run the service on a disabled cache.
The service cannot nd the specied key.
The element associated with the specied key is expired.
Integration Server issues a ServiceException in the following cases:
If useLoader is true and no loaders are congured for the cache.
59
Even Header
Cache Folder
pub.cache:getKeys
WmPublic. Retrieves the keys of all elements available in the cache.
Input Parameters
cacheManagerName
cacheName
String Name of the cache from which to retrieve the keys. This
parameter is case sensitive.
excludeExpiredKeys
default.
Output Parameters
keys
Usage Notes
Caution: Retrieving all of the keys from a cache is a memory-intensive activity. It is
possible for the list of available keys to be larger than the memory available on your
system. In such cases, Integration Server might issue an OutOfMemoryError and
become unresponsive.
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
60
Odd Header
Cache Folder
pub.cache:put
WmPublic. Populates a cached element with a specied key-value pair.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
key
value
useWriter
61
Even Header
Cache Folder
pub.cache:remove
WmPublic. Removes the cached element associated with the specied key.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
key
Output Parameters
removed
cache.
Usage Notes
If the element associated with the specied key does not exist, pub.cache:remove returns
false for removed .
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
62
Odd Header
Cache Folder
pub.cache:search
WmPublic. Searches through an indexed cache and returns the results. The
pub.cache:search service accepts the selection criteria as an IData object and performs the
search by converting the IData object to a search query of Ehcache.
Note: Before using this service, you must make the cache searchable. For more
information about making a cache searchable, see webMethods Integration Server
Administrators Guide.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache from which the search results are to
be returned. This parameter is case sensitive.
includeAributes
includeKey
search results.
Note: You should set this parameter to true only if the value is
required for your programming logic.
includeValue
Note: You should set this parameter to true only if the value is
required for your programming logic.
63
Even Header
Cache Folder
criteria
Description
OP1
OPR
OP2
maxResults
groupBy
orderBy
aggregator
Output Parameters
results
Description
64
Odd Header
Cache Folder
Key
Value
Result
Usage Notes
By default a search will return an unlimited number of results. If too many results
are returned, Integration Server might issue an OutOfMemoryError and become
unresponsive. Limit the size of the results using the maxResults parameter.
Because the state of the cache can change between search executions, include
all of the aggregators to the search query at the same time, so that the returned
aggregators are of the same iteration of the cache.
A sample IData that you can specify as the criteria input parameter is given below.
The following input searches the personCache cache for entries, where age is greater
than 60 and gender is female.
IData idata = IDataFactory.create();
//Cache information
IDataMap map = new IDataMap(idata)
;
map.put("cacheManagerName", "SearchTestManager")
;
map.put("cacheName", "personCache")
;
map.put("includeKey", "true")
;
map.put("includeValue", "true") ;
//Condition 1 - Age > 60
IData input1 = IDataFactory.create()
;
IDataCursor cursor1 = input1.getCursor()
;
IDataUtil.put(cursor1, "OP1", "age")
;
IDataUtil.put(cursor1, "OPR", "gt")
;
IDataUtil.put(cursor1, "OP2", 60) ;
//Condition 2 - Gender == Female
IData input2 = IDataFactory.create()
;
IDataCursor cursor2= input2.getCursor()
;
IDataUtil.put(cursor2, "OP1", "gender")
;
IDataUtil.put(cursor2, "OPR", "eq")
;
IDataUtil.put(cursor2, "OP2", Person.Gender.FEMALE) ;
//Joining conditions, condition 1 && condition 2
IData input3 = IDataFactory.create()
;
65
Even Header
Cache Folder
pub.cache.admin:clearAllCaches
WmPublic. Deletes all of the elements from all caches contained in the specied cache
manager.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cachePrex
Output Parameters
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
Important: The elements you delete from the caches are deleted permanently. You cannot
undo this action.
If pub.cache.admin:clearAllCaches does not nd any caches with the specied prex, the
service does not clear any caches, but returns Success for status .
You cannot clear caches managed by system cache managers.
If you have any existing locks on any of the elements in the cache, the
pub.cache.admin:clearAllCaches service waits indenitely until all locks are released.
Integration Server returns a status of Error in the following cases:
66
Odd Header
Cache Folder
pub.cache.admin:clearCache
WmPublic. Deletes all elements from the specied cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
Output Parameters
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
Important: The elements you delete from the cache are deleted permanently. You cannot
undo this action.
You cannot clear caches managed by system cache managers.
If you have any existing locks on any of the elements in the cache, the
pub.cache.admin:clearCache service waits indenitely until all locks are released.
Integration Server returns a status of Error in the following cases:
If the cache is managed by a system cache manager.
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
67
Even Header
Cache Folder
pub.cache.admin:disableCache
WmPublic. Disables a cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
Output Parameters
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
When you disable a cache, the cached elements are unavailable for cache operations but
still present in the cache. Use the pub.cache.admin:enableCache service to make the disabled
cached elements available again.
You cannot disable caches managed by system cache managers.
After the pub.cache.admin:disableCache service disables a cache, other services cannot add,
modify, delete, or retrieve its contents. For example, calls to the pub.cache:get service will
return null.
The disabled state of a cache lasts only for the lifetime of its cache manager. When the
cache manager is restarted, either by restarting Integration Server or clicking the reload
icon on the Settings > Caching page in Integration Server Administrator, the cache is
enabled.
When you disable a cache, Integration Server:
Discards operations such as pub.cache:get, pub.cache:remove, and pub.cache.atomic:replace
calls on the cache.
Returns a null for pub.cache:get calls on the cache.
Integration Server returns a status of Error in the following cases:
If the cache is managed by a system cache manager.
68
Odd Header
Cache Folder
pub.cache.admin:enableCache
WmPublic. Enables a cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
Output Parameters
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
You cannot enable caches managed by system cache managers.
When you disable a cache, the cached elements are unavailable but still present in the
cache. Use pub.cache.admin:enableCache to make the cached elements available again.
Integration Server returns a status of Error in the following cases:
If the cache is managed by a system cache manager.
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.admin:evictExpiredElements
WmPublic. Deletes all of the expired elements from a cache.
69
Even Header
Cache Folder
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache from which you want to delete the
expired elements. This parameter is case sensitive.
Output Parameters
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
Important: The elements you delete from the cache are deleted permanently. You cannot
undo this action.
The pub.cache.admin:evictExpiredElements service can take longer to delete expired elements
depending on the number of elements contained in the cache. If the cache contains a
large number of elements, pub.cache.admin:evictExpiredElements might take longer to process
the request than when the cache contains fewer elements.
Integration Server returns a status of Error in the following cases:
If the cache is managed by a system cache manager.
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.admin:isCacheDisabled
WmPublic. Checks whether the cache is disabled.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
70
Odd Header
Cache Folder
cacheName
String Name of the cache for which you want to check the
status (whether it is disabled or enabled). This parameter is
case sensitive.
Output Parameters
isDisabled
status
message
Usage Notes
Note: Only users with administrator privileges can execute this service.
pub.cache.admin:isCacheDisabled returns Error for status and an accompanying message in
the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.atomic:putIfAbsent
WmPublic. Adds an element to the cache if the cache does not contain an element with
the specied key.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
71
Even Header
Cache Folder
key
value
Output Parameters
keyExists
the cache.
false indicates that an element with the key does not exist in
the cache.
oldValue
Usage Notes
The pub.cache.atomic:putIfAbsent service adds the specied value to the cache only if the
specied key does not already exist in the cache. If the specied key already exists in the
cache, pub.cache.atomic:putIfAbsent returns true for keyExists and the value of the cached
element for oldValue .
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.atomic:remove
WmPublic. Removes the cached element associated with the specied key and value.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
key
72
Odd Header
Cache Folder
value
Output Parameters
removed
pub.cache.atomic:replace
WmPublic. Replaces the cached element value with the supplied value.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the value you want to
replace. This parameter is case sensitive.
key
oldValue
newValue
73
Even Header
Cache Folder
Output Parameters
replaced
Usage Notes
The pub.cache.atomic:replace service replaces an element in the cache only if an element
with the values of the specied key and oldValue parameters already exist in the cache. If
an element exist in the cache with the specied key and oldValue , pub.cache.atomic:replace
replaces the cached element with the specied key and newValue .
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.atomic:replaceIfKeyExists
WmPublic. Replaces the cached element if an element for the specied key exists in a
cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the key. This parameter
is case sensitive.
key
value
74
Odd Header
Cache Folder
Output Parameters
keyExists
String Indicates whether the element with the passed key exists
in the cache.
true indicates that the element with the key already exists in
the cache.
false indicates that the element with the key does not exist
in the cache.
oldValue
Usage Notes
The pub.cache.atomic:replaceIfKeyExists service replaces an element in the cache only if the
specied key already exists in the cache. If an element with the specied key exists,
pub.cache.atomic:replaceIfKeyExists replaces value of the cached element with the one
specied in value .
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.bulk:isClusterBulkLoadEnabled
WmPublic. Checks whether the cache on at least one Integration Server node in the
Terracoa Server Array cluster is enabled for bulk loading.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
75
Even Header
Cache Folder
Output Parameters
enabled
Usage Notes
The pub.cache.bulk:isClusterBulkLoadEnabled service applies only to distributed caches. If you
run pub.cache.bulk:isClusterBulkLoadEnabled on a local cache, the service returns false for
enabled .
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.bulk:isNodeBulkLoadEnabled
WmPublic. Checks whether the cache of the current Integration Server node in the
Terracoa Server Array cluster is bulk-load enabled.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
Output Parameters
enabled
76
Odd Header
Cache Folder
pub.cache.bulk:setNodeBulkLoadEnabled
WmPublic. Enables or disables bulk loading mode in the current Integration Server node
for the cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
bulkMode
Output Parameters
None.
Usage Notes
The pub.cache.bulk:setNodeBulkLoadEnabled service applies only to distributed caches.
The pub.cache.bulk:setNodeBulkLoadEnabled service does nothing if you:
Try to enable bulk loading (bulkMode set to true) when the node is already in bulkload mode.
77
Even Header
Cache Folder
Try to disable bulk loading (bulkMode set to false) when the node is not already in
bulk-load mode.
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.bulk:waitUntilClusterBulkLoadComplete
WmPublic. Indicates whether Integration Server delays execution of the next step in
a ow service until all of the Integration Server nodes in the Terracoa Server Array
cluster disable bulk loading for the cache.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
Output Parameters
None.
Usage Notes
The pub.cache.bulk:waitUntilClusterBulkLoadComplete service applies only to distributed caches.
If none of the nodes are bulk-load enabled, Integration Server immediately executes the
next step in the ow service without waiting.
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If a cache operation fails.
pub.cache.lock:acquireLock
WmPublic. Acquires a lock on the cached element that contains the specied key.
78
Odd Header
Cache Folder
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the element to lock. This
parameter is case sensitive.
key
lockType
lockWaitTime
Key
Description
read
write
Description
Any integer
greater than 0
Output Parameters
None.
Usage Notes
If the pub.cache.lock:acquireLock service acquires a lock, the element remains locked until
released with the pub.cache.lock:releaseLock service.
You must acquire and release a lock in the same thread in which pub.cache.lock:acquireLock
is executing. Failing to do so could cause the key to remain locked indenitely.
79
Even Header
Cache Folder
pub.cache.lock:isLockedByCurrentThread
WmPublic. Checks whether the current thread is holding a lock on the cached element
for the specied key.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the key. This parameter
is case sensitive.
key
lockType
Description
80
Odd Header
Cache Folder
read
write
Output Parameters
locked
pub.cache.lock:releaseLock
WmPublic. Releases a lock on the element for the specied key.
Input Parameters
cacheManagerName
String Name of the cache manager that manages the cache. This
parameter is case sensitive.
cacheName
String Name of the cache that contains the key. This parameter
is case sensitive.
key
lockType
Description
81
Even Header
Cache Folder
read
write
Output Parameters
None.
Usage Notes
You must call pub.cache.lock:releaseLock from the same thread from which you call
pub.cache.lock:acquireLock. Failing to do so could cause the key to remain locked
indenitely.
Integration Server issues a ServiceException in the following cases:
If you do not specify all required input parameters.
If Integration Server cannot nd the specied cache manager or cache.
If you try to release a read lock on a cached element for which a write lock is set, or
release a write lock on a cached element for which a read lock is set.
82
Odd Header
Client Folder
3 Client Folder
Summary of Elements in this Folder ...........................................................................................
84
83
Even Header
Client Folder
You use the elements in the client folder to formulate and submit requests to HTTP, FTP,
SFTP, e-mail, and LDAP servers.
pub.client:ftp
pub.client.ftp:append
pub.client.ftp:cd
pub.client.ftp:cdls
pub.client.ftp:delete
pub.client.ftp:dir
pub.client.ftp:get
pub.client.ftp:getCompletedNotification
pub.client.ftp:login
pub.client.ftp:logout
84
Odd Header
Client Folder
Element
pub.client.ftp:ls
pub.client.ftp:mdelete
pub.client.ftp:mget
pub.client.ftp:mput
pub.client.ftp:put
pub.client.ftp:putCompletedNotification
pub.client.ftp:quote
pub.client.ftp:rename
pub.client.ftp:sessioninfo
pub.client:http
pub.client.ldap:add
pub.client.ldap:bind
85
Even Header
Client Folder
Element
pub.client.ldap:cancelNotification
pub.client.ldap:compare
pub.client.ldap:delete
pub.client.ldap:modify
pub.client.ldap:registerNotification
pub.client.ldap:rename
pub.client.ldap:search
pub.client.oauth:executeRequest
pub.client.sftp:cd
pub.client.sftp:chgrp
pub.client.sftp:chmod
pub.client.sftp:chown
pub.client.sftp:get
86
Odd Header
Client Folder
Element
pub.client.sftp:login
pub.client.sftp:logout
pub.client.sftp:ls
pub.client.sftp:mkdir
pub.client.sftp:put
pub.client.sftp:pwd
pub.client.sftp:rename
pub.client.sftp:rm
pub.client.sftp:rmdir
pub.client.sftp:symlink
pub.client:smtp
pub.client:soapClient
pub.client:soapHTTP
pub.client:soapRPC
87
Even Header
Client Folder
pub.client:ftp
WmPublic. Performs a series of FTP actions.
This service executes the following sequence:
1. Logs on to an FTP server.
2. Changes to a specied working directory.
3. Performs one of the following FTP commands: ls, put, or get.
4. Logs o the FTP server.
Input Parameters
serverhost
serverport
username
String Valid FTP user of the remote FTP server (for example,
anonymous).
password
command
dirpath
transfermode
transfertype
String One of two FTP data transfer types: passive or active. The
default is active.
localle
88
Odd Header
Client Folder
remotele
content
encoding
serverencoding
timeout
String Time (measured in seconds) this service waits for the FTP
server response on the command channel before timing out and
aborting the request. Default is to wait forever.
putunique
secure
Description
auth
89
Even Header
Client Folder
variable is ignored.
securedata
cleanlinefeeds
newSession
proxyAlias
String Optional. Name of the proxy server alias for the proxy server
to which Integration Server routes the FTP request.
If you do not specify a proxyAlias , Integration Server routes the
FTP request through the proxy server specied in the default
FTP proxy alias. If there is no default FTP proxy alias, the action
taken by Integration Server depends on the value specied for the
wa.net.proxy.useNonDefaultProxies parameter.
If the wa.net.proxy.useNonDefaultProxies parameter is set
to true, Integration Server routes the FTP request through the
proxy server in any congured FTP proxy alias. If the Integration
Server does not have any dened FTP proxy aliases, Integration
Server sends the FTP request directly to the FTP server or
90
Odd Header
Client Folder
dirlist
localle
remotele
content
returncode
returnmsg
logmsg
Usage Notes
If you set the auth variable in the secure parameter to SSL, TLS, or TLS-P, pub.client.ftp
automatically sends the following sequence of FTP commands prior to sending the
USER command:
AUTH <SSL | TLS | TLS-P>
PBSZ 0
The client FTP services will not negotiate for less security than you have specied with
the auth parameter. However, if you set the auth variable to None, the client FTP services
can operate (in a non-secure mode) with any FTP server.
The FTP services will always connect to a secure FTP server using a non-secure (SSL)
socket. After geing a valid reply from the AUTH command, the FTP services will
convert the connected socket to an SSL socket and initiate SSL handshaking.
91
Even Header
Client Folder
pub.client.ftp:append
WmPublic. Appends data to a remote le.
If the remote le does not exist, the service creates the le.
Input Parameters
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
sessionkey
transfermode
ascii.
content
localle
remotele
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:cd
WmPublic. Changes the working directory on the FTP server. (This service corresponds
to the standard FTP command cd dirpath.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
92
Odd Header
Client Folder
dirpath
String Directory to which you want to switch on the FTP server. For
example: pub
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:cdls
WmPublic. Changes the working directory on the FTP server and retrieves a list of le
names. (This service corresponds to the standard FTP commands cd dirpath and ls
namePattern.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
dirpath
lenamepaern
orderby
is the default.
93
Even Header
Client Folder
Output Parameters
dirlist
returncode
returnmsg
logmsg
pub.client.ftp:delete
WmPublic. Deletes a le in the current working directory on an FTP server. (This service
corresponds to the standard FTP command delete somefile.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
remotele
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:dir
WmPublic. Retrieves the le list during an FTP session. (This service corresponds to the
standard FTP command dir namepattern.)
94
Odd Header
Client Folder
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
lenamepaern
Output Parameters
dirlist
returncode
returnmsg
logmsg
pub.client.ftp:get
WmPublic. Retrieves a le from a remote FTP server. (This service corresponds to the
standard FTP command get.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
transfermode
localle
remotele
encoding
95
Even Header
Client Folder
If this variable is null, the encoding currently set for the FTP
session is used. If encoding was never set for this FTP session, the
default JVM encoding is used.
largelethreshold
String Optional. Denes the size (in bytes) of a "large" le. For
more information, see the Usage Notes.
If you...
Then...
Set to 0
Leave blank
cleanlinefeeds
96
Odd Header
Client Folder
Output Parameters
content
returncode
returnmsg
logmsg
islargele
largethreshold .
Usage Notes
The largelethreshold parameter improves the ability of pub.client.ftp:get to retrieve
larger les. If a retrieved le is larger than the size specied in the largelethreshold
parameter, and the localle parameter is empty (which means the retrieved le is
retrieved to memory, not to a le on disk), the Integration Server streams the large le
to a temporary le. While this will improve the scalability of pub.client.ftp:get, it will
also reduce the throughput of the operation because the retrieved le will be wrien to a
temporary le.
Tip: Due to the impact to the throughput of pub.client.ftp:get when streaming is enabled,
you should set the value for largelethreshold to a suciently large value so that it causes
only minimal degradation to throughput and yet allows the service to retrieve large les
without encountering an OutOfMemory exception.
See Also
pub.io:close
pub.client.ftp:getCompletedNotification
WmPublic. A publishable document type that represents the document published to
notify parties that an FTP get command has completed on Integration Server which is
acting as the FTP server.
97
Even Header
Client Folder
When a user completes an FTP get command in his or her own user directory (that is,
when the RETR command is completed on the server side but the server has not yet
acknowledged the client with return code 226), an event is red to notify interested
parties by publishing a document. EDI packages that subscribe to this document will
retrieve the le from the server.
Parameters
username
lename
_env
Usage Notes
Integration Server publishes an instance document of pub.client.ftp:getCompletedNotification
when an FTP client has completed an FTP get command on Integration Server through
an FTP/S port. Because the retrieved le is located on the Integration Server le system,
only subscribers located on the same Integration Server would have access to the le.
Consequently the pub.client.ftp:getCompletedNotification publishable document type is set
to publish locally only. When Integration Server publishes an instance document for
pub.client.ftp:getCompletedNotification, only subscribers located on the same Integration Server
receive the document. Software AG does not recommend synchronizing the publishable
document type with the messaging provider.
pub.client.ftp:login
WmPublic. Connects to a remote FTP server and logs in with a specied user name and
password.
You must use this service to initiate an FTP session before using most other services in
pub.client.ftp.
Input Parameters
serverhost
serverport
String Port number on which the FTP server listens for requests (for
example, 4566).
The default is 21.
98
Odd Header
Client Folder
dataport
username
String Valid FTP user on the remote FTP server (for example,
anonymous).
password
account
String Optional. The user name for an account on the FTP server.
Specify account if your FTP host requires account information. The
account is dened in the FTP protocol to further identify the user
that is identied by the username and password input variables.
transfertype
String Type of the FTP data transfer mode (passive or active). The
default is active.
encoding
serverencoding
timeout
secure
Description
auth
99
Even Header
Client Folder
newSession
proxyAlias
String Optional. Name of the proxy alias for the proxy server
through which Integration Server routes the FTP request.
If you do not specify a proxyAlias , Integration Server routes the
FTP request through the proxy server specied in the default
FTP proxy alias. If there is no default FTP proxy alias, the action
taken by Integration Server depends on the value specied for the
wa.net.proxy.useNonDefaultProxies parameter.
If the wa.net.proxy.useNonDefaultProxies parameter is set
to true, Integration Server routes the FTP request through the
proxy server in any congured FTP proxy alias. If the Integration
Server does not have any dened FTP proxy aliases, Integration
Server sends the FTP request directly to the FTP server or
throws an exception depending on the seings specied for the
wa.net.proxy.fallbackToDirectConnection parameter.
100
Odd Header
Client Folder
String Unique key for the current FTP session. This session key must
be provided to execute most other services in pub.client.ftp.
returncode
returnmsg
logmsg
Usage Notes
If you set the auth variable in the secure parameter to SSL, TLS, or TLS-P,
pub.client.ftp:login automatically sends the following sequence of FTP commands prior
to sending the USER command:
AUTH <SSL | TLS | TLS-P>
PBSZ 0
The client FTP services will not negotiate for less security than you have specied with
the auth parameter. However, if you set the auth variable to None, the client FTP services
can operate (in a non-secure mode) with any FTP server.
The FTP services will always connect to a secure FTP server using a non-secure (SSL)
socket. After geing a valid reply from the AUTH command, the FTP services will
convert the connected socket to an SSL socket and initiate SSL handshaking.
pub.client.ftp:logout
WmPublic. Logs o of the FTP server and ends the current FTP session.
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
101
Even Header
Client Folder
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:ls
WmPublic. Retrieves the le list during an FTP session. (This service corresponds to the
standard FTP command ls namepattern.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
lenamepaern
orderby
Description
none
timestamp
102
Odd Header
Client Folder
Output Parameters
dirlist
returncode
returnmsg
logmsg
Usage Note
During an FTP session, this service uses the character set specied in the encoding
parameter of the pub.client.ftp:login service. If the le list this service retrieves includes
characters from other languages, set the encoding parameter appropriately. For example,
set encoding to SJIS for le names containing Japanese characters. If you do not set
encoding in pub.client.ftp:login, the default JVM encoding is used.
pub.client.ftp:mdelete
WmPublic. Deletes multiple les in the current working directory on an FTP server.
(This service corresponds to the standard FTP command mdelete pattern.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
lenamepaern
String Paern that species the names of the les to be deleted from
the current working directory (for example, *.txt).
Important: If you do not specify a value for lenamepaern , all les in
the working directory are deleted.
Output Parameters
returncode
returnmsg
logmsg
103
Even Header
Client Folder
pub.client.ftp:mget
WmPublic. Transfers multiple les from the remote FTP server. (This service
corresponds to the standard FTP command mget.)
Input Parameters
sessionkey
transfermode
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
String FTP le transfer mode (ascii or binary). The default is
ascii.
localdir
String Directory in the local le system where the retrieved les are
to be saved (for example, c:\temp\ftpfiles).
lenamepaern
String Paern that species the names of the les to be retrieved (for
example, *.txt).
encoding
String Optional. Character set in which the les are encoded. This
variable is required to convert the les to bytes correctly. Specify
an IANA-registered character set (for example, ISO-8859-1).
If you do not specify encoding , the encoding assigned to the FTP
session is used. If the encoding was not set for the FTP session, the
default JVM encoding is used.
Output Parameters
lenames
String List List of les retrieved from the remote FTP server.
returncode
returnmsg
logmsg
pub.client.ftp:mput
WmPublic. Transfers multiple les to a remote FTP server. (This service corresponds to
the standard FTP command input.)
webMethods Integration Server Built-In Services Reference Version 9.6
104
Odd Header
Client Folder
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
transfermode
localdir
lenamepaern
putunique
Output Parameters
lenames
returncode
returnmsg
logmsg
Usage Note
Some FTP servers, such as the Integration Server FTP Listener, do not support "puing"
a unique le. When using the pub.client.ftp:put or pub.client.ftp:mput service to put a unique
le to an FTP server that does not support puing a unique le, you will encounter an
error like this one:
com.wm.app.b2b.server.ServiceException: 500 'STOU': command not understood.
pub.client.ftp:put
WmPublic. Transfers a le to a remote FTP server. (This service corresponds to the
standard FTP command put.)
105
Even Header
Client Folder
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
transfermode
content
localle
remotele
putunique
Output Parameters
returncode
returnmsg
logmsg
Usage Notes
Some FTP servers, such as the Integration Server FTP Listener, do not support
"puing" a unique le. When using the pub.client.ftp:put or pub.client.ftp:mput service to
put a unique le to an FTP server that does not support puing a unique le, you
will encounter an error like this one:
com.wm.app.b2b.server.ServiceException: 500 'STOU': command not understood.
When a client invokes this service to transport a le, the FTP listener determines
the content handler to use based on the le's extension. The content handler
converts the le content to the input values for the service to invoke. The
Integration Server_directory\instances\instance_name \lib\mime.types le contains
the mappings of le extension to content type.
106
Odd Header
Client Folder
ftp_no_extension
pub.client.ftp:putCompletedNotification
WmPublic. A publishable document type that represents the document published to
notify parties that an FTP put command has completed on Integration Server which is
acting as the FTP server.
When a user completes an FTP put command in his or her own user directory (that is,
when the STOR command is completed on the server side but the server has not yet
acknowledged the client with return code 226), an event is red to notify interested
parties by publishing a document. EDI packages that subscribe to this document will
retrieve the le from the server.
Parameters
username
lename
_env
Usage Notes
Integration Server publishes an instance document of pub.client.ftp:putCompletedNotification
when an FTP client has completed an FTP put command on Integration Server through
an FTP/S port. Because the put le is located on the Integration Server le system,
only subscribers located on the same Integration Server would have access to the le.
Consequently the pub.client.ftp:putCompletedNotification publishable document type is set
to publish locally only. When Integration Server publishes an instance document for
pub.client.ftp:putCompletedNotification, only subscribers located on the same Integration Server
receive the document. Software AG does not recommend synchronizing the publishable
document type with a messaging provider.
107
Even Header
Client Folder
pub.client.ftp:quote
WmPublic. Executes a given FTP command.
You can use this service to execute non-standard FTP commands.
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
string
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:rename
WmPublic. Renames a le on a remote FTP server. (This service corresponds to the
standard FTP command rename.)
Input Parameters
sessionkey
String Unique key for the current FTP session. The sessionkey is
returned by the pub.client.ftp:login service.
oldname
newname
String New fully qualied name for the le (for example, temp/
newname.txt).
108
Odd Header
Client Folder
Output Parameters
returncode
returnmsg
logmsg
pub.client.ftp:sessioninfo
WmPublic. Returns session information for all of the FTP servers that users are currently
logged into.
Input Parameters
name
Output Parameters
sessioninfo
Description
serverhost
serverport
dataport
username
password
account
109
Even Header
Client Folder
encoding
Usage Notes
When you start an FTP session with pub.client.ftp:login, you can set the optional dataport
parameter to specify the port number for data transfers. During the FTP session,
pub.client.ftp:sessionInfo returns the dataport parameter with the port number used for data
transfers.
If you do not set the dataport parameter in pub.client.ftp:login, the server uses a random port
number. During the FTP session, pub.client.ftp:sessionInfo will return a 0 for the dataport
parameter to indicate that the port number used for data transfers is random.
pub.client:http
WmPublic. Issues an HTTP request that you specify and returns the HTTP response.
Input Parameters
url
110
Odd Header
Client Folder
loadAs
Description
args
111
Even Header
Client Folder
form-urlencoded.
string
112
Odd Header
Client Folder
mimeStream
stream
113
Even Header
Client Folder
auth
Description
type
authentication.
user
pass
114
Odd Header
Client Folder
token
headers
timeout
maxKeepAlive
Connections
115
Even Header
Client Folder
newSession
proxyAlias
String Optional. Name of the proxy alias for the proxy server to
which Integration Server routes the HTTP request.
If you do not specify a proxyAlias , Integration Server routes
the HTTP request through the proxy server specied in the
default HTTP proxy alias. If there is no default HTTP proxy
alias, the action taken by Integration Server depends on the
value specied for the wa.net.proxy.useNonDefaultProxies
parameter.
116
Odd Header
Client Folder
useJSSE
header
117
Even Header
Client Folder
body
Key
Description
lines
status
statusMessage
Description
bytes
stream
Usage Notes
If url begins with https:, you can use pub.security:setKeyAndChain to specify the certicate
chain. If you do not specify a certicate chain, pub.client:http uses the default outbound
SSL certicate seings to authenticate the resources.
If pub.client:http does not receive a response within the time-out period specied in the
server's wa.net.timeout server conguration parameter, it will throw an exception. For
information about the wa.net.timeout server conguration parameter, see webMethods
Integration Server Administrators Guide.
For the HTTP request, the pub.client:http service uses a client connection from a client
connection pool. When you set the loadAs input parameter to stream so that the service
returns the response body as a stream, the connection remains in use and is not returned
to the connection pool until you close the stream. To close the stream and return the
connection to the pool, you can use the pub.io:close service or the close() method on the
returned stream object.
118
Odd Header
Client Folder
pub.client.ldap:add
WmPublic. Inserts a new entry into the directory.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
dn
ars
119
Even Header
Client Folder
arsData
Output Parameters
connectionHandle
Usage Notes
Specify only one of ars or arsData . If you specify both, the service uses ars and
ignores arsData .
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:bind
WmPublic. Performs an LDAP bind operation that associates the connection with the
specied principal.
Input Parameters
url
principal
credentials
timeout
ldapEnv
120
Odd Header
Client Folder
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
Output Parameters
connectionHandle
Usage Notes
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:cancelNotification
WmPublic. Cancels a previously created notication request.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
121
Even Header
Client Folder
dn
connectionHandle
scope
Output Parameters
connectionHandle
Usage Notes
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:compare
WmPublic. Compares the value of an aribute in the LDAP directory with a value
specied by the service.
Input Parameters
url
principal
credentials
timeout
122
Odd Header
Client Folder
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
dn
connectionHandle
arName
arValue
Output Parameters
connectionHandle
result
Usage Notes
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:delete
WmPublic. Removes an entry from the directory.
123
Even Header
Client Folder
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
dn
connectionHandle
Output Parameters
connectionHandle
Usage Notes
This service does not ag an error if the entry is not deleted. One way to check is to use
pub.client.ldap:search to search for the entry. If the entry is not found, you know it has been
deleted.
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
124
Odd Header
Client Folder
pub.client.ldap:modify
WmPublic. Performs an LDAP modify operation that allows you to specify a list of
aributes with corresponding lists of values to add to, replace, or remove from the
directory entry.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
dn
connectionHandle
ars
125
Even Header
Client Folder
Output Parameters
connectionHandle
Usage Notes
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:registerNotification
WmPublic. Creates a notication (or "persistent search") that causes Integration Server
to listen for LDAP events. When the notication gets an event, the specied service is
called.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
dn
126
Odd Header
Client Folder
connectionHandle
scope
String The scope of the search. Must be "object" (only search the
specied directory entry, "onelevel" (only search the immediate
children of the specied directory entry), or "subtree" (search the
directory entry, its children, and all of their children).
service
user
Output Parameters
connectionHandle
Usage Notes
When the pub.client.ldap:registerNotification service creates a notication, Integration Server
listens for four dierent types of events: objectAdded, objectRemoved, objectRenamed,
and objectChanged. If any one of these events is triggered, pub.client.ldap: registerNotification
calls the specied target service and passes these inputs to it:
Pipeline Input
Description
type
dn
aributes
oldDn
127
Even Header
Client Folder
pub.client.ldap:rename
WmPublic. Performs an LDAP rename (move) operation allowing you to rename an
entry.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
no to leave the connection open and available.
connectionHandle
newDn
128
Odd Header
Client Folder
Output Parameters
connectionHandle
Usage Notes
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.ldap:search
WmPublic. Performs an LDAP search operation with the specied parameters and
returns the results of the search.
Input Parameters
url
principal
credentials
timeout
ldapEnv
close
String Flag that species whether to close the connection after the
service nishes. Set to:
yes to close the connection. This is the default.
129
Even Header
Client Folder
dn
connectionHandle
scope
String The scope of the search. Must be "object" (only search the
specied directory entry), "onelevel" (only search the immediate
children of the specied directory entry), or "subtree" (search the
directory entry, its children, and all their children).
lter
countLimit
timeLimit
returnAributes
returnObjects
dereferenceLinks
isDocumentList
130
Odd Header
Client Folder
Output Parameters
connectionHandle
results
resultsList
Usage Notes
To see if no match was found, check for either:
A results parameter that does not contain a key-value pair.
A resultsList parameter with a size of 0.
When close is set to yes, Integration Server removes the connectionHandle from the
pipeline, but does not close the LDAP connection. To close the LDAP connection, set the
wa.server.ldap.cleanContext server conguration parameter to true. For information
about the wa.server.ldap.cleanContext server conguration parameter, see webMethods
Integration Server Administrators Guide.
pub.client.oauth:executeRequest
WmPublic. Allows Integration Server to access protected resources on a resource server
using an existing Open Authentication (OAuth) access token.
When a client application requires the OAuth protocol to access a users protected
resources on a third-party resource server (for example, Facebook, Google, Twier, or
another Integration Server), the client application must present an access token on behalf
of the user in order to gain access. This service presents the access token to the resource
server on behalf of the user.
Note: To use this service, you must have registered the client with the provider's
authorization server and received an access token. You will use the information given to
you by the provider to congure this service. For information about registering a client
and obtaining an access token, refer to the provider's documentation.
Integration Server uses the Scribe API, a simple open source client implementation, to
connect to OAuth providers. The Scribe API provides client implementations for many
providers such as Facebook, Google, and Twier. For information about using the Scribe
API, see the Usage Notes.
131
Even Header
Client Folder
Input Parameters
provider
providerClass
clientID
clientSecret
accessToken
132
Odd Header
Client Folder
acccessTokenSecret
resourceUri
method
String The HTTP method Integration Server will use to issue the
request to the provider.
Possible values are get, post, put, and delete.
headers
queryString
Parameters
bodyParameters
requestDataType
133
Even Header
Client Folder
requestData
responseDataType
Output Parameters
responseData
134
Odd Header
Client Folder
You can use this service to connect to OAuth providers other than Integration
Server by seing the provider parameter to Other and the providerClass parameter
to the name of an org.scribe.builder.api.Api implementation. The org.scribe.builder.api.Api
interface is dened in the Scribe open source API. For this approach, Software AG
recommends the following:
That you download the Scribe API source code from the GitHub website. You
can either browse the code or generate the Javadoc for the Scribe classes using
the following command:
javadoc -sourcepath your_scribe_install_dir/src/main/java -d
your_destination_dir org.scribe.builder.api
That you check the Scribe OAuth library to see if an implementation for
the provider that you want to use already exists. Scribe provides client
implementation for many providers.
Important: If an implementation already exists but the provider has changed its
interface and the implementation in the Scribe library no longer works, you can
either modify the implementation yourself or request an update from the author
of Scribe.
If your provider supports OAuth 2.0, then extend org.scribe.builder.api.DefaultApi20. If
your provider supports OAuth 1.0a, then extend org.scribe.builder.api.DefaultApi10a.
pub.client.sftp:cd
WmPublic. Changes the working directory on the remote SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
path
String Absolute or relative path of the directory that you want as the
working directory on the remote SFTP server.
Output Parameters
returnCode
returnMsg
135
Even Header
Client Folder
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:chgrp
WmPublic. Changes the group ownership of one or more remote les.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
groupId
path
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:chmod
WmPublic. Changes permissions of one or more remote les.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
mode
path
136
Odd Header
Client Folder
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:chown
WmPublic. Changes the owning user of one or more remote les.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
uid
path
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:get
WmPublic. Retrieves a le from a remote SFTP server and saves it on the local machine.
137
Even Header
Client Folder
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
remoteFile
localFile
mode
local le.
returnMsg
contentStream
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
138
Odd Header
Client Folder
pub.client.sftp:login
WmPublic. Connects to a remote SFTP server and logs in with the specied SFTP user
alias.
Important: You must use this service to initiate an SFTP session before using most other
pub.client.sftp services.
Input Parameters
userAlias
reuseSession
the default.
Output Parameters
sessionKey
String Unique key for the current SFTP session. Most other
pub.client.sftp services require this session key to execute.
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:logout
WmPublic. Logs o the user from the SFTP server and ends the current SFTP session.
139
Even Header
Client Folder
Input Parameters
String Unique key for the current SFTP session. The sessionKey
parameter is returned by the pub.client.sftp:login service.
sessionKey
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:ls
WmPublic. Retrieves the remote directory listing of the specied path. If path is not
specied, the pub.client.sftp:ls service retrieves the le listing of the current remote
directory. The pub.client.sftp:ls service also retrieves additional details such as permissions
and ownership information.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey
parameter is returned by the pub.client.sftp:login service.
path
Output Parameters
returnCode
returnMsg
140
Odd Header
Client Folder
dirList
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:mkdir
WmPublic. Creates a new remote directory.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey
parameter is returned by the pub.client.sftp:login service.
path
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:put
WmPublic. Transfers a le to a remote SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
contentStream
141
Even Header
Client Folder
localFile
remoteFile
mode
remote le.
returnMsg
Usage Notes
If you specify contentStream , you must specify remoteFile . In this case, localFile is
optional.
If you specify localFile , then remoteFile and contentStream are optional. In this case, the
remote le will be given the same name as the local le.
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:pwd
WmPublic. Displays the remote working directory in the SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
142
Odd Header
Client Folder
Output Parameters
returnCode
returnMsg
path
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:rename
WmPublic. Renames a le or directory on a remote SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
oldPath
newPath
String New fully qualied name for the le (for example, temp/
newname.txt).
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
143
Even Header
Client Folder
pub.client.sftp:rm
WmPublic. Deletes one or more remote les on the SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
path
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:rmdir
WmPublic. Deletes one or more remote directories on the SFTP server.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
path
Output Parameters
returnCode
returnMsg
144
Odd Header
Client Folder
Usage Notes
The remote directories that you want to delete must be empty.
You cannot execute SFTP commands in parallel using the same session key.
pub.client.sftp:symlink
WmPublic. Creates a symbolic link between the old path and the new path of a le.
Input Parameters
sessionKey
String Unique key for the current SFTP session. The sessionKey is
returned by the pub.client.sftp:login service.
oldPath
String Old path of the le for which you want to create a symbolic link.
newPath
String New path of the le to which the symbolic link should point.
Output Parameters
returnCode
returnMsg
Usage Notes
You cannot execute SFTP commands in parallel using the same session key.
pub.client:smtp
WmPublic. Sends a MIME-type e-mail message.
You may aach one or more content objects or les to the message.
Input Parameters
to
cc
145
Even Header
Client Folder
bcc
subject
subjectCharset
String Optional. The character set used to encode the MIME message
headers (including subject). If subjectCharset is not specied, then
charset is used. If charset is not specied, the value in the server
conguration parameter wa.server.email.charset is used. If that
parameter is not set, the utf-8 encoding is used.
charset
from
mailhost
String Optional. The number of the port on which the SMTP host
listens. This parameter does not need to be set if the host listens on
port 25 (the standard SMTP port).
auth
Description
user
pass
146
Odd Header
Client Folder
secure
Description
transportLayerSecurity
body
mimeStream
aachments
147
Even Header
Client Folder
Key
Description
contenype
content
lename
properties
encoding
charset
Description
148
Odd Header
Client Folder
name
value
Output Parameters
status
Usage Notes
Any one of the recipient elds, that is the to , cc , or the bcc parameter, must be dened.
If you are using lename to aach a le to the message and the le is not a
plain text le, you must set the contenype and encoding . For example, to aach
IntegrationServer_directory \instances\instance_name \mydir\myle.doc to a pub.client:smtp
service, you would invoke the service with the following values in aachments :
contenype :application/msword
lename :instances/instance_name/mydir/myfile.doc
encoding :base64
pub.client:soapClient
WmPublic. Creates and sends SOAP 1.1 and SOAP 1.2 messages over HTTP, HTTPS, or
JMS transports for any style/use combination supported by Integration Server.
Input Parameters
address
request
wsdName
wsdBinderName
149
Even Header
Client Folder
targetInputSignature
targetOutputSignature
soapHeaders
transportHeaders
method
Value
150
Odd Header
Client Folder
namespaceName
localName
Description
transport
Description
type
String Optional.
Type of
authentication that
the service will
perform. Set to:
Basic to submit
a password digest
for authentication.
user
String Optional.
User name that this
service will use if
one is requested.
pass
String Optional.
Password that this
service will submit
if one is requested.
151
Even Header
Client Folder
serverCerts
Document Optional.
The message
signer's private
key and certicate
chain.
privateKey Object
The SOAP message
signer's private
key.
certChain Object List
A list containing
the signer's
complete certicate
chain, where
element 0 in the
list contains the
signer's certicate
and element 1
contains the CA's
certicate.
message
Description
user
String Optional.
User name that this
service will use if
one is requested.
pass
String Optional.
Password that this
service will submit
if one is requested.
serverCerts
Document Optional.
The message
signer's private
key and certicate
chain.
privateKey Object
The SOAP message
signer's private
key.
152
Odd Header
Client Folder
timeout
Object Optional.
The partner's
complete certicate
chain, where
element 0 in the
list contains the
message signer's
certicate and
element 1 contains
the CA's certicate.
153
Even Header
Client Folder
soapAction
encoding
Output Parameters
soapResponseData
response
header
Value
154
Odd Header
Client Folder
requestLines
lines
155
Even Header
Client Folder
soapStatus
status
statusMessage
Indicates that...
156
Odd Header
Client Folder
157
Even Header
Client Folder
User-Agent
158
Odd Header
Client Folder
JMSXGroupSeq
If the value of JMSXGroupSeq is not an integer, Integration Server ignores the
name/value pair and does not place it in the message header.
Note: The JMSXGroupID and JMSXGroupSeq names are case-sensitive.
The JMSX prex is reserved for JMS-dened properties. If a header whose name
starts with JMSX is passed into transportHeaders and it is not named JMSXGroupID
or JMSXGroupSeq, Integration Server generates a fault and returns it to the service.
You can set any provider-specic property whose name starts with JMS_ in
transportHeaders . Integration Server maps a supplied name/value pair whose
name starts with JMS_ directly to a JMS message property. Because the JMS
standard reserves the prex JMS_<vendor_name> for provider-specic properties,
Integration Server does not validate the name or value of this content.
Note: The JMS provider determines which provider-specic properties to accept
and include in the JMS message properties. For more information about providerspecic message properties how the JMS provider handles them, review the JMS
provider documentation.
You can use transportHeaders to specify run-time properties that aect the values
of the JMS message and JMS message headers. The following table identies these
properties and indicates the JMS message header elds aected by each property.
Property Name
Description
jms.async
Description
true
false
159
Even Header
Client Folder
Property Name
Description
Integration Server waits for a
response before executing the next
step in the ow service.
jms.deliveryMode
Description
PERSISTENT
NON_PERSISTENT
jms.timeToLive
160
Odd Header
Client Folder
Property Name
Description
Note: If the jms.timeToLivevalue is not a valid Long,
Integration Server ignores the property and uses the default
value of 0.
jms.priority
The lowercase jms. prex is reserved for run-time properties used by Integration
Server. If a header starts with jms.and is not one of the jms. properties dened
by Integration Server, Integration Server ignores the property.
The header information returned when pub.client:soapClient executes an operation in a web
service descriptor created on Integration Server version 8.2 or later varies depending on
the following:
The transport used to send the SOAP message which is determined by the
wsdBinderName
The success or failure of the pub.client:soapClient service and if failure occurs, the point
at which that happens
The message exchange paern for the operation specied in wsdOperationName
Note: The same conditions that aect the contents of header also determine whether the
soapResponseData contains a SOAP response, a SOAP fault, or an exception.
The following table identies the basic success and failure scenarios when
pub.client:soapClient service executes an operation in a web service descriptor created
on Integration Server version 8.2 or later and the header information that would be
returned in each scenario. The table also indicates whether the scenario results in a
SOAP response, SOAP fault, or exception being returned in soapResponseData .
Note: JMS status codes as well as the status code 900 are specic to Integration Server
and are not derived from any standard.
Use Case
The pub.client:soapClient service fails before sending the SOAP request.
161
Even Header
Client Folder
Parameter
Description
status
900
statusMessage
requestLines returned?
lines returned?
No
soapResponseData
Contains an exception.
Use Case
The pub.client:soapClient service fails while sending the SOAP request.
Parameter
Description
status
statusMessage
requestLines returned?
Yes
lines returned?
soapResponseData
Contains an exception.
Use Case
162
Odd Header
Client Folder
The pub.client:soapClient service fails while sending the SOAP request because a
timeout occurs.
Parameter
Description
status
408
statusMessage
Timeout
requestLines returned?
Yes
lines returned?
No
soapResponseData
Contains an exception.
Use Case
The pub.client:soapClient service executes successfully.
Parameter
Description
status
statusMessage
requestLines returned?
Yes
lines returned?
soapResponseData
163
Even Header
Client Folder
Use Case
The pub.client:soapClient service executes successfully but the JMS provider is not
available, causing Integration Server to write the JMS message to the client side
queue.
Note: This use case applies to JMS only. It occurs only when the client side queue is
enabled for the JMS binder specied in wsdBinderName .
Parameter
Description
status
300
statusMessage
requestLines returned?
Yes
lines returned?
No.
soapResponseData
Not returned.
Use Case
The pub.client:soapClient service sends the SOAP request successfully but receives a
SOAP fault from the web service provider.
Parameter
Description
status
statusMessage
requestLines returned?
Yes
lines returned?
No
soapResponseData
164
Odd Header
Client Folder
Use Case
The pub.client:soapClient service fails while processing the SOAP response.
Parameter
Description
status
900
statusMessage
requestLines returned?
Yes
lines returned?
Yes
soapResponseData
Contains an exception.
165
Even Header
Client Folder
pub.client:soapHTTP
WmPublic. Deprecated - Submits a SOAP message to a server via HTTP or HTTPS.
Input Parameters
soapRequestData
166
Odd Header
Client Folder
address
String URL to which you want the SOAP message sent. For
example:
https://servername:5555/soap/default
auth
validateSOAP
Description
type
user
pass
SOAPAction
contentType
167
Even Header
Client Folder
encoding
Output Parameters
soapResponseData
header
Description
lines
168
Odd Header
Client Folder
soapStatus
status
statusMessage
Indicates that...
Usage Notes
This service is deprecated. There is not a replacement service.
If address begins with https:, you can use pub.security.keystore:setKeyAndChain to specify
the certicate chain. If you do not specify a certicate chain, pub.client:soapHTTP uses the
default outbound SSL certicate seings to authenticate the resources.
To send a SOAP message with this service, you must rst generate an empty SOAP
object with the pub.soap.utils:createSoapData service and then populate it using services such
as pub.soap.utils:addHeaderEntry and pub.soap.utils:addBodyEntry.
See Also
pub.client:soapRPC
Examples
sample.soap:buildMsg_sendHTTP
169
Even Header
Client Folder
pub.client:soapRPC
WmPublic. Deprecated - Submits a SOAP remote procedure call via HTTP or HTTPS.
Input Parameters
address
reqParms
method
auth
Value
acct
Cash
amt
150.00
org
Sales
Value
namespaceName
localName
Value
170
Odd Header
Client Folder
type
user
pass
targetInputSignature
targetOutputSignature
SOAPAction
contentType
loadAs
171
Even Header
Client Folder
timeout
Output Parameters
soapResponseData
respParms
header
soapStatus
Key
Value
status
closed
balance
-4.95
Value
lines
status
statusMessage
172
Odd Header
Client Folder
A value of...
Indicates that...
Usage Notes
This service is deprecated. There is not a replacement service.
To disable output validation for pub.client:soapRPC, set the
wa.server.soap.validateResponse server conguration parameter to false. For more
information about wa.server.soap.validateResponse, see webMethods Integration Server
Administrators Guide.
If address begins with https:, you can use pub.security.keystore:setKeyAndChain to specify
the certicate chain. If you do not specify a certicate chain, pub.client:soapRPC uses the
default outbound SSL certicate seings to authenticate the resources.
See Also
pub.client:soapHTTP
Examples
sample.soap:buildRPC_SendHTTPSimple
173
Even Header
174
Odd Header
Date Folder
4 Date Folder
Pattern String Symbols ..............................................................................................................
176
177
Examples ....................................................................................................................................
179
180
180
175
Even Header
Date Folder
You can use the elements in the date folder to generate and format date values.
Meaning
Presentation
Example
era designator
Text
AD
year
Number
1996 or 96
month in year
Text or Number
July or Jul or 07
day in month
Number
10
Number
12
Number
minute in hour
Number
30
second in minute
Number
55
millisecond
Number
978
day in week
Text
Tuesday or Tue
day in year
Number
189
Number
week in year
Number
27
week in month
Number
176
Odd Header
Date Folder
Symbol
Meaning
Presentation
Example
am/pm marker
Text
PM
Number
24
Number
time zone
Text
Pacific Standard
Time or PST or
GMT-08:00
Number
'
Delimiter
''
single quote
Literal
'
Time Zones
When working with date services, you can specify time zones. The Earth is divided
into 24 standard time zones, one for every 15 degrees of longitude. Using the time
zone including Greenwich, England (known as Greenwich Mean Time, or GMT) as the
starting point, the time is increased by an hour for each time zone east of Greenwich and
decreases by an hour for each time zone west of Greenwich. The time dierence between
a time zone and the time zone including Greenwich, England (GMT) is referred to as the
raw oset.
The following table identies the dierent time zones for the Earth and the raw oset for
each zone from Greenwich, England. The eects of daylight savings time are ignored in
this table.
Note: Greenwich Mean Time (GMT) is also known as Universal Time (UT).
ID
Raw Offset
Name
MIT
-11
HST
-10
AST
-9
177
Even Header
Date Folder
ID
Raw Offset
Name
PST
-8
PNT
-7
MST
-7
CST
-6
EST
-5
IET
-5
PRT
-4
CNT
-3.5
AGT
-3
BET
-3
GMT
ECT
+1
CAT
+2
EET
+2
ART
+2
EAT
+3
MET
+3.5
NET
+4
PLT
+5
IST
+5.5
BST
+6
178
Odd Header
Date Folder
ID
Raw Offset
Name
VST
+7
CTT
+8
JST
+9
ACT
+9.5
AET
+10
SST
+11
NST
+12
Examples
You can specify timezone input parameters in the following formats:
As a full name. For example:
Asia/Tokyo
America/Los_Angeles
You can use the java.util.TimeZone.getAvailableIDs() method to obtain a list of the valid
full name time zone IDs that your JVM version supports.
As a custom time zone ID, in the format GMT[+ | -]hh[ [:]mm]. For example:
GMT+2:00
All time zones 2 hours east of Greenwich (that is, Central Africa
Time, Eastern European Time, and Egypt Standard Time)
GMT-3:00
GMT+9:30
All time zones 9.5 hours east of Greenwich (that is, Australian
Central Time)
179
Even Header
Date Folder
Note: Because some three-leer abbreviations can represent multiple time zones (for
example, "CST" could represent both U.S. "Central Standard Time" and "China Standard
Time"), all abbreviations are deprecated. Use the full name or custom time zone ID
formats instead.
pub.date:calculateDateDifference
pub.date:currentNanoTime
pub.date:dateBuild
pub.date:dateTimeBuild
180
Odd Header
Date Folder
Element
pub.date:dateTimeFormat
pub.date:elapsedNanoTime
pub.date:formatDate
pub.date:getCurrentDate
pub.date:getCurrentDateString
pub.date:getWorkingDays
pub.date:calculateDateDifference
WmPublic. Calculates the dierence between two dates and returns the result as
seconds, minutes, hours, and days.
Input Parameters
startDate
endDate
startDatePaern
endDatePaern
181
Even Header
Date Folder
Output Parameters
dateDierenceSeconds String The dierence between the startingDateTime and
endingDateTime, truncated to the nearest whole number of
seconds.
dateDierenceMinutes String The dierence between the startingDateTime and
endingDateTime, truncated to the nearest whole number of
minutes.
dateDierenceHours
dateDierenceDays
Usage Notes
Each output value represents the same date dierence, but in a dierent scale. Do not
add these values together. Make sure your subsequent ow steps use the correct output,
depending on the scale required.
pub.date:currentNanoTime
WmPublic. Returns the current time returned by the most precise system timer, in
nanoseconds.
Input Parameters
None.
Output Parameters
nanoTime
pub.date:dateBuild
WmPublic. Builds a date String using the specied paern and the specied date
elements.
182
Odd Header
Date Folder
Input Parameters
paern
String Paern representing the format in which you want the date
returned. For paern-string notation, see "Paern String Symbols"
on page 176. If you do not specify paern , dateBuild returns null.
If paern contains a time zone and timezone is not specied, the
default time zone of webMethods Integration Server is used.
year
month
dayofmonth
timezone
String Optional. Time zone in which you want the output date and
time expressed. Specify a time zone code as shown in "Time Zones"
on page 177 (for example, EST for Eastern Standard Time).
If you do not specify timezone , the value of the server's "user
timezone" property is used. If this property has not been set, GMT
is used.
locale
Output Parameters
value
pub.date:dateTimeBuild
WmPublic. Builds a date/time string using the specied paern and the specied date
elements.
183
Even Header
Date Folder
Input Parameters
paern
String Paern representing the format in which you want the time
returned. For paern-string notation, see "Paern String Symbols" on
page 176. If you do not specify paern , dateTimeBuild returns null. If
paern contains a time zone and the timezone parameter is not set, the
time zone of Integration Server is used.
year
month
dayofmonth
hour
minute
second
millis
timezone
String Optional. Time zone in which you want the output date and
time expressed. Specify a time zone code as shown in "Time Zones"
on page 177 (for example, EST for Eastern Standard Time).
If you do not specify timezone , the value of the server's "user
timezone" property is used. If this property has not been set, GMT is
used.
184
Odd Header
Date Folder
locale
Output Parameters
value
pub.date:dateTimeFormat
WmPublic. Converts date/time (represented as a String) string from one format to
another.
Input Parameters
inString
currentPaern
newPaern
String Paern string that describes the format in which you want
inString returned. For paern-string syntax, see "Paern String
Symbols" on page 176.
locale
lenient
185
Even Header
Date Folder
Usage Notes
As described in "Notes on Invalid Dates" on page 180, if the paern yy is
used for the year, dateTimeFormat uses a 50-year moving window to interpret
the value of the year. If you need to change this behavior so that the year is
interpreted as 80 years before or 20 years after the current date (as described in
the Java class java.text.SimpleDateFormat), set the server conguration parameter
wa.server.pubDateTimeFormat.javaSlidingWindow to true. For information about
seing conguration parameters, see webMethods Integration Server Administrators Guide.
By default, the Integration Server throws an exception if no input is passed to the
service. To suppress the error message and return a null value for the value parameter,
set the server conguration parameter wa.server.date.suppressPaernError to true.
For information about seing conguration parameters, see webMethods Integration
Server Administrators Guide.
If currentPaern does not contain a time zone, the value is assumed to be in the time
zone of the webMethods Integration Server.
If newPaern contains a time zone, the time zone of the webMethods Integration Server
is used.
pub.date:elapsedNanoTime
WmPublic. Calculates the time elapsed between the current time and the given time, in
nanoseconds.
Input Parameters
nanoTime
186
Odd Header
Date Folder
Output Parameters
elapsedNanoTime
elapsedNanoTimeStr
pub.date:formatDate
WmPublic. Formats a Date object as a string.
Input Parameters
date
paern
String Paern string that describes the format in which you want
the date returned. For paern-string notation, see "Paern String
Symbols" on page 176.
timezone
String Optional. Time zone in which you want the output date and
time expressed. Specify a time zone code as shown in "Time Zones"
on page 177 (for example, EST for Eastern Standard Time).
If you do not specify timezone , the value of the server's "user
timezone" property is used. If this property has not been set, GMT is
used.
locale
187
Even Header
Date Folder
Output Parameters
value
pub.date:getCurrentDate
WmPublic. Returns the current date as a Date object.
Input Parameters
None.
Output Parameters
date
pub.date:getCurrentDateString
WmPublic. Returns the current date as a String in a specied format.
Input Parameters
paern
String Paern representing the format in which you want the date
returned. For paern-string notation, see "Paern String Symbols"
on page 176.
timezone
String Optional. Time zone in which you want the output date and
time expressed. Specify a time zone code as shown in "Time Zones"
on page 177 (for example, EST for Eastern Standard Time).
If you do not specify timezone , the value of the server's "user
timezone" property is used. If this property has not been set, GMT
is used.
locale
188
Odd Header
Date Folder
Output Parameters
value
pub.date:getWorkingDays
WmPublic. Returns the number of working days between two dates.
The number of working days returned includes the startDate, but excludes the endDate.
Input Parameters
startDate
endDate
startDatePaern
endDatePaern
Output Parameters
workingDays
Usage Notes
The pub.date:getWorkingDays service requires you to congure holidays and weekend
days in the holidays.cnf conguration le in Integration Server_directory\instances
\instance_name \packages\WmPublic\cong directory. The pub.date:getWorkingDays
service uses this conguration le to nd the number of working days between two
dates.
Note: If you make any changes to the holidays.cnf, you must reload the WmPublic
package or restart Integration Server for the changes to take eect.
Parameter Settings for holidays.cnf file
The following table gives the parameter seings for the holidays.cnf le:
189
Even Header
Date Folder
Parameter
Description
holiday.format
holiday.<number>
weekend.<number>
190
Odd Header
Db Folder
5 Db Folder
Summary of Elements in this Folder .........................................................................................
192
191
Even Header
Db Folder
pub.db:call
pub.db:clearTransaction
pub.db:close
pub.db:closeAll
pub.db:commit
pub.db:connect
pub.db:delete
192
Odd Header
Db Folder
Element
pub.db:execSQL
pub.db:getProcInfo
pub.db:getProcs
pub.db:getTableInfo
pub.db:getTables
pub.db:insert
pub.db:query
WmDB. Retrieves all rows from the specied table that meet
the given criteria. As an alternative to this service, consider
using the services provided with the webMethods Adapter
for JDBC.
pub.db:rollback
pub.db:startTransaction
pub.db:update
193
Even Header
Db Folder
Element
pub.db:call
WmDB. Invokes a stored procedure on a target database. As an alternative to this
service, consider using the services provided with the webMethods Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
194
Odd Header
Db Folder
$dbSchemaPaern
$dbProc
$dbProcSig
Description
name
sqlType
direction
$dbParamsByOrder
195
Even Header
Db Folder
Output Parameters
$dbMessage
Usage Notes
The output will also contain output parameters and procedure return values (the return
value is called RETURN_VALUE).
pub.db:clearTransaction
WmDB. Clears the transactional state within a database connection. As an alternative
to this service, consider using the services provided with the webMethods Adapter for
JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
196
Odd Header
Db Folder
$dbUser
$dbPass
$dbDriver
$dbConnection
Output Parameters
$dbMessage
Usage Notes
On some databases, exceptional conditions within transactions will automatically abort
the entire transaction. When this happens, the standard commit/rollback operations are
meaningless because there is no current transaction. If this occurs, use the clearTransaction
service to clear the transactional state and prepare for a new transaction. You should
only use this service if you have begun a transaction and cannot end it with a standard
commit or rollback.
The clearTransaction service does not involve a database operation; it is entirely internal to
the webMethods Integration Server.
pub.db:close
WmDB. Closes a specied database connection. As an alternative to this service,
consider using the services provided with the webMethods Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
197
Even Header
Db Folder
$dbUser
$dbPass
$dbDriver
$dbConnection
$closeDbConnection
pub.db:closeAll
WmDB. Closes all database connections that the session has opened. As an alternative
to this service, consider using the services provided with the webMethods Adapter for
JDBC.
Input Parameters
None.
Output Parameters
$dbMessage
pub.db:commit
WmDB. Commits changes to a database. As an alternative to this service, consider using
the services provided with the webMethods Adapter for JDBC.
198
Odd Header
Db Folder
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
Output Parameters
$dbMessage
Usage Notes
This service returns an exception if an error occurs when commiing changes to the
database. The most common reason for this error is that no transaction has been started
(see "pub.db:startTransaction" on page 217).
pub.db:connect
WmDB. Creates a connection to the database using the supplied JDBC URL, user name,
and password. As an alternative to this service, consider using the services provided
with the webMethods Adapter for JDBC.
You can also specify a JDBC driver specic to the database.
199
Even Header
Db Folder
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbURL, $dbDriver, $dbProperties
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbProperties
Value
user
dbu
password
dbu
weblogic.codeset
GBK
200
Odd Header
Db Folder
Output Parameters
$dbConnection
$dbMessage
Usage Notes
Database connections opened by pub.db:connect are associated with the current session.
Multiple aempts to connect to the same database by the same client will result in
the same connection being reused. This means that if client A and client B request
connections to the same database, they each get their own new connection. If client
A makes another call to pub.db:connect, the previous connection is reused. Associating
the database connection with the client session prevents remote clients from having to
reconnect repeatedly to a target database.
Connections are not pooled or shared across sessions. Unless explicitly closed (by calling
pub.db:close or pub.db:closeAll), connections associated with a session are closed when
the session is ushed from memory. This happens at a regular interval, which can be
congured using the Integration Server Administrator. For more information about
seing the session time-out limit, see webMethods Integration Server Administrators Guide.
pub.db:delete
WmDB. Removes all rows in the specied table that meet the given criteria. As an
alternative to this service, consider using the services provided with the webMethods
Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
201
Even Header
Db Folder
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
$dbTable
$data
Output Parameters
$updateCount
$dbMessage
202
Odd Header
Db Folder
pub.db:execSQL
WmDB. Executes the specied SQL statement. As an alternative to this service, consider
using the services provided with the webMethods Adapter for JDBC.
The service does not perform any parsing on the SQL statement.
Input Parameters
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
203
Even Header
Db Folder
$dbSQL
$dbProcessEsc
$dbProcessReporterTokens
String Optional. Flag that indicates whether reporter tags
(for example, %value xxx%) will be processed in the
SQL. Including these tokens in your SQL allows dynamic
construction of complex SQL statements, at the possible
expense of some execution speed.
Set to:
true to process tags.
false to ignore tags. This is the default.
$dbParamValues
$dbParamNames
$dbParamTypes
Output Parameters
sql
204
Odd Header
Db Folder
paramsAsStrings
$rowCount
results
$updateCount
$dbMessage
Usage Notes
This service does not support updates from a web browser or HTML form.
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
SQL supports host variables ("?") in statements to be executed. Because the pipeline is
based on named values and individual host variables are not named, $dbParamNames
and $dbParamTypes are used to supply an index-to-name mapping for each SQL
statement executed. For example, consider the following SQL query:
SELECT * FROM royalties WHERE pub_id = ? and roy_amt > ?
To execute this SQL query, you could supply the following values to the pub.db:execSQL
service:
Key
Value
Description
$dbSQL
SELECT * FROM
royalties WHERE
pub_id = ? and
roy_amt > ?
$dbParamNames
pub_id
roy_amt
$dbParamTypes
varchar
integer
205
Even Header
Db Folder
Key
Value
Description
pub_id
P1053
roy_amt
10
To execute this SQL query, you could supply the following values to the pub.db:execSQL
service:
Key
Value
Description
$dbSQL
$dbParamNames
book_id
pub_id
book_title
$dbParamTypes
varchar
varchar
varchar
book_id
B234
pub_id
P1053
book_title
The Importance of
Being Earnest
206
Odd Header
Db Folder
Key
Value
Description
pub.db:getProcInfo
WmDB. Retrieves information about one or more stored procedures. As an alternative
to this service, consider using the services provided with the webMethods Adapter for
JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
207
Even Header
Db Folder
$dbSchemaPaern
$dbProc
Output Parameters
This service returns one document (IData object) for each item in the stored procedure's
signature that matches the specied input criteria. Each document contains information
about the signature item. The document's key will be the same as the signature
item's name. For a description of what information is supplied by your database,
seejava.sql.DatabaseMetaData.getProcedureColumns in your JDBC documentation.
pub.db:getProcs
WmDB. Retrieves the names of stored procedures for the specied database. As an
alternative to this service, consider using the services provided with the webMethods
Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
208
Odd Header
Db Folder
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
$dbProcNamePaern
Output Parameters
This service returns one document (IData object) for each stored procedure that
matches the specied input criteria. Each document contains information about
a stored procedure. The document's key will be the same as the stored procedure
name. For a description of what information is supplied by your database, see
java.sql.DatabaseMetaData.getProcedures in your JDBC documentation.
209
Even Header
Db Folder
pub.db:getTableInfo
WmDB. Retrieves information about columns in the specied table. As an alternative
to this service, consider using the services provided with the webMethods Adapter for
JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
210
Odd Header
Db Folder
$dbColumnNamePaern
Output Parameters
This service returns one document (IData object) for each column that matches the
specied input criteria. Each document contains information about a column. The
document's key will be the same as the column name.
Usage Notes
This service accepts input from a web browser or HTML form.
pub.db:getTables
WmDB. Retrieves the names of tables in the specied database and schema. As an
alternative to this service, consider using the services provided with the webMethods
Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
211
Even Header
Db Folder
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
String Optional. Name of the schema for which you want the
names of tables.
If your database supports paern-matching on schemas,
you may specify a paern-matching string for the schema
name, where _ represents a single character and %
represents any string of characters. For example, the value
HR% would represent any schema beginning with the
characters HR.
If you want the table names from all schemas, set
$dbSchemaPaern to null.
If you are running against DB2, you use this parameter to
specify the table's AuthID.
$dbTableNamePaern
212
Odd Header
Db Folder
Output Parameters
This service returns one document (IData object) for each table that matches the
specied input criteria. Each document contains information about a table. The
document's key will be the same as the table name.
Usage Notes
This service accepts input from a web browser or HTML form.
pub.db:insert
WmDB. Inserts one or more rows into the specied table. As an alternative to this
service, consider using the services provided with the webMethods Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
213
Even Header
Db Folder
$dbCatalog
$dbSchemaPaern
$dbTable
$dbRollbackOnFail
$data
Output Parameters
$updateCount
$failCount
$errors
$dbMessage
214
Odd Header
Db Folder
Usage Notes
This service accepts input from a web browser or HTML form.
pub.db:query
WmDB. Retrieves all rows from the specied table that meet the given criteria. As an
alternative to this service, consider using the services provided with the webMethods
Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
215
Even Header
Db Folder
$dbSchemaPaern
$dbTable
$data
Output Parameters
results
$dbMessage
$rowCount
String Conditional. Number of rows for the table that meet the
criteria specied in $data .
Usage Notes
This service accepts input from a web browser or HTML form.
pub.db:rollback
WmDB. Discards changes to a database. As an alternative to this service, consider using
the services provided with the webMethods Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
216
Odd Header
Db Folder
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
Output Parameters
$dbMessage
Usage Notes
This service throws an exception if an error occurs when discarding changes to the
database. The most common reason for this error is that no transaction has been started
(see pub.db:startTransaction).
pub.db:startTransaction
WmDB. Begins a transaction on a database connection. As an alternative to this service,
consider using the services provided with the webMethods Adapter for JDBC.
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
217
Even Header
Db Folder
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
Output Parameters
$dbMessage
Usage Notes
By default, all database connections are opened in "auto commit" mode, meaning
the results of a operation are automatically commied to the database when that
operation succeeds. To use a connection in a transactional context, you must rst call
pub.db:startTransaction to take that connection out of "auto commit" mode.
This service returns an exception if an error occurs when starting the new transaction.
Common reasons for an error when starting a new transaction are:
A transaction is already in progress (see pub.db:commit, pub.db:rollback, or
pub.db:clearTransaction).
The target database does not support transactions.
After a transaction has been started, it must be terminated with a call to either
pub.db:commit (to save all changes to the database) or pub.db:rollback (to discard changes).
pub.db:update
WmDB. Updates all rows in a table that meet the given criteria. Rows are updated with
the supplied new data. As an alternative to this service, consider using the services
provided with the webMethods Adapter for JDBC.
218
Odd Header
Db Folder
Input Parameters
You may specify the connection parameters in one of the following ways:
$dbAlias
$dbURL, $dbUser, $dbPass, $dbDriver
$dbConnection
$dbAlias
$dbURL
$dbUser
$dbPass
$dbDriver
$dbConnection
$dbCatalog
$dbSchemaPaern
219
Even Header
Db Folder
$dbTable
$criteria
$set
Output Parameters
$updateCount
$dbMessage
220
Odd Header
Document Folder
6 Document Folder
Summary of Elements in this Folder .........................................................................................
222
221
Even Header
Document Folder
You use the elements in the document folder to perform operations on documents in the
pipeline.
pub.document:bytesToDocument
pub.document:deleteDocuments
pub.document:documentListToDocument
pub.document:documentToBytes
pub.document:documentToDocumentList
pub.document:documentToXMLValues
pub.document:groupDocuments
pub.document:insertDocument
pub.document:searchDocuments
pub.document:sortDocuments
222
Odd Header
Document Folder
Element
pub.document:XMLValuesToDocument
pub.document:bytesToDocument
WmPublic. Converts an array of bytes to a document. This service can only be used with
byte arrays created by executing the pub.document:documentToBytesservice.
Input Parameters
documentBytes
Output Parameters
document
Document A document.
Usage Notes
Use this service with the pub.document:documentToBytes service, which converts a document
into a byte array. You can pass the resulting byte array to the pub.document:bytesToDocument
service to convert it back into the original document.
In order for the document-to-bytes-to-document conversion to work, the entire content
of the document must be serializable. Every object in the document must be of a data
type known to Integration Server, or it must support the java.io.Serializable interface.
Note: If Integration Server encounters an unknown object in the document that does
not support the java.io.Serializable interface, that object's value will be lost. It will be
replaced with a string containing the object's class name.
223
Even Header
Document Folder
pub.document:deleteDocuments
WmPublic. Deletes the specied documents from a set of documents.
Input Parameters
documents
indices
Output Parameters
documents
deletedDocuments
Usage Notes
The pub.document:deleteDocuments service returns an error if the indices parameter value is
less than zero or more than the number of documents in the documents input parameter.
pub.document:documentListToDocument
WmPublic. Constructs a document (an IData object) from a document list (an IData[ ])
by generating key/value pairs from the values of two elements that you specify in the
document list.
Input Parameters
documentList
name
224
Odd Header
Document Folder
Important: The data type of the element that you specify in the name
parameter must be String.
value
Output Parameters
document
Usage Notes
The following example illustrates how the documentListToDocument service would convert
a document list that contains three documents to a single document containing three
key/value pairs. When you use the documentListToDocument service, you specify which
two elements from the source list are to be transformed into the keys and values in the
output document. In the following example, the values from the pName elements in the
source list are transformed into key names, and the values from the pValue elements are
transformed into the values for these keys.
A documentList containing these three documents:
Key
Value
pName
cx_timeout
pValue
1000
Key
Value
pName
cx_max
pValue
2500
Key
Value
pName
cx_min
pValue
10
225
Even Header
Document Folder
Value
cx_timeout
1000
cx_max
2500
cx_min
10
pub.document:documentToBytes
WmPublic. Converts a document to an array of bytes.
Input Parameters
document
Output Parameters
documentBytes
Usage Notes
Use the pub.document:documentToBytes service with the pub.document:bytesToDocument service,
which converts the byte array created by this service back into the original document.
The pub.document:documentToBytes service is useful when you want to write a document to
a le (using the pub.file:bytesToFile service), an input stream (using the pub.io:bytesToStream
service), or a cache (using the pub.cache:put service).
In order for the document-to-bytes-to-document conversion to work, the entire content
of the document must be serializable. Every object in the document must be of a data
type known to Integration Server, or it must support the java.io.Serializable interface. If
Integration Server encounters an unknown object in the document that does not support
226
Odd Header
Document Folder
the java.io.Serializable interface, that object's value will be lost. Integration Server will
replace it with a string containing the object's class name.
Example
This example describes how to use the pub.document:documentToBytes and
pub.document:bytesToDocument services to cache a document in the pipeline.
1. A document is not directly serializable, so you must rst use the
pub.document:documentToBytes service. Invoke the service and map the document to the
document input parameter. This will add the output documentBytes to the pipeline.
2. Invoke pub.cache:put and map documentBytes to the value input parameter for that
service. Set the key input parameter to a value that is meaningful to your application.
3. At another point in your application, you will need to retrieve the document you
cached. You can do so by invoking the pub.cache:get service and supplying the same
key input parameter as in step 2. The value output parameter that was added as
output to the pipeline will contain the byte array from step 1.
227
Even Header
Document Folder
pub.document:documentToDocumentList
WmPublic. Expands the contents of a document into a list of documents.
Each key/value pair in the source document is transformed to a single document
containing two keys (whose names you specify). These two keys will contain the key
name and value of the original pair.
Input Parameters
document
228
Odd Header
Document Folder
name
String Name to assign to the key that will receive the key name from
the original key/value pair. (In the example above, this parameter
was set to pName.)
value
String Name to assign to the key that will receive the value from the
original key/value pair. (In the example above, this parameter was
set to pValue.)
Output Parameters
documentList
Usage Notes
The following example shows how a document containing three keys would be
converted to a document list containing three documents. In this example, the names
pName and pValue are specied as names for the two new keys in the document list.
A document containing these three keys:
Key
Value
cx_timeout
1000
cx_max
2500
cx_min
10
Value
pName
cx_timeout
pValue
1000
Key
Value
pName
cx_max
229
Even Header
Document Folder
Key
Value
pValue
2500
Key
Value
pName
cx_min
pValue
10
pub.document:documentToXMLValues
WmPublic. Converts a document (IData object) to a String by encoding it in the
webMethods XMLValues format.
Input Parameters
document
Output Parameters
xmlvalues
Usage Notes
To convert the encoded String back into an IData object, use the
pub.document:XMLValuesToDocument service.
pub.document:groupDocuments
WmPublic. Groups a set of documents based on specied criteria.
Input Parameters
documents
230
Odd Header
Document Folder
groupCriteria
Output Parameters
documentGroups
Usage Notes
The following example illustrates how to specify the values for the groupCriteria
parameter:
key
compareStringsAs
name
string
age
numeric
birthdate
datetime
pattern
yyyy-MM-dd
The input documents will be grouped based on name, age, and birth date.
pub.document:insertDocument
WmPublic. Inserts a new document in a set of documents at a specied position.
231
Even Header
Document Folder
Input Parameters
documents
insertDocument
index
Output Parameters
documents
pub.document:searchDocuments
WmPublic. Searches a set of documents for entries matching a set of Criteria.
Input Parameters
documents
searchCriteria
232
Odd Header
Document Folder
sorted
If the value for the sorted parameter is set to true, the required
documents are searched faster.
Output Parameters
resultdocuments
documentListIndices
documents
Usage Note
For example, if you want to search a set of documents for documents where BirthDate is
10th January 2008, the values for the searchCriteria parameter would be:
key
value
compareStringsAs
pattern
Birthdate
2008-01-10
datetime
yyyy-MM-dd
pub.document:sortDocuments
WmPublic. Sorts a set of input documents based on the specied sortCriteria.
Input Parameters
documents
sortCriteria
233
Even Header
Document Folder
Usage Notes
For example, if you want to sort a set of documents based on name, age, and then on
birth date, the values for sortCriteria parameter would be:
key
order
compareStringsAs
Name
ascending
string
Age
descending
numeric
Birthdate
ascending
datetime
pattern
yyyy-MM-dd
pub.document:XMLValuesToDocument
WmPublic. Decodes a String containing an XMLValues-encoded document and
produces a document (IData object).
234
Odd Header
Document Folder
Input Parameters
xmlvalues
Output Parameters
document
Usage Notes
An XMLValues-encoded document is produced using pub.document:documentToXMLValues.
235
Even Header
236
Odd Header
Event Folder
7 Event Folder
Summary of Elements in this Folder .........................................................................................
238
237
Even Header
Event Folder
You use the elements in the event folder to subscribe to events, write event handlers, and
work with EDA (Event Driven Architecture) events.
pub.event:addSubscriber
pub.event:alarm
pub.event:alarmInfo
pub.event:audit
pub.event:auditError
pub.event:auditErrorInfo
pub.event:auditInfo
pub.event:callstackItem
pub.event:deleteSubscriber
pub.event.eda:event
pub.event.eda:eventToDocument
238
Odd Header
Event Folder
Element
pub.event.eda:schema_event
pub.event.eda:send
pub.event:error
pub.event:errorInfo
pub.event:exception
pub.event:exceptionInfo
pub.event:gdEnd
pub.event:gdEndInfo
pub.event:gdStart
pub.event:gdStartInfo
pub.event:getEventTypes
pub.event:getSubscribers
pub.event:jmsReceiveErrorEvent
239
Even Header
Event Folder
Element
pub.event:jmsSendErrorEvent
pub.event:journal
pub.event:journalInfo
pub.event:modifySubscriber
pub.event.nerv:eventToDocument
pub.event.nerv:send
pub.event:portStatus
pub.event:portStatusInfo
pub.event:reloadEventManagerSettings
pub.event:replication
pub.event:replicationInfo
pub.event:saveEventManagerSettings
pub.event:security
240
Odd Header
Event Folder
Element
pub.event:securityInfo
pub.event:sessionEnd
pub.event:sessionEndInfo
pub.event:sessionExpire
pub.event:sessionExpireInfo
pub.event:sessionStart
pub.event:sessionStartInfo
pub.event:stat
pub.event:statInfo
pub.event:txEnd
pub.event:txEndInfo
pub.event:txStart
pub.event:txStartInfo
241
Even Header
Event Folder
pub.event:addSubscriber
WmPublic. Creates a subscription for a specied event.
Important: Subscriptions that you add using this service take eect immediately;
however, they are not made permanent unless you also persist them to
disk with the pub.event:saveEventManagerSettings service. If you do not run
pub.event:saveEventManagerSettings after adding subscribers, your changes will be lost when
the server is restarted.
Input Parameters
EventType
Tip: To view the current list of event types, you can execute the
pub.event:getEventTypes service.
Filter
242
Odd Header
Event Folder
Would match...
Any string
M*
M*X
The following table shows the aribute that is ltered for each
event type. Note that some event types cannot be ltered.
EventType
Filtered attribute
Alarm Event
Audit Event
Audit Error
Event
Error Event
Exception
Event
GD End Event
GD Start Event
JMS Delivery
Failure Event
243
Even Header
Event Folder
JMS Retrieval
Failure Event
Journal Event
Port Status
Event
Replication
Event
Security Event
Session End
Event
Session Expire
Event
Session Start
Event
Stat Event
244
Odd Header
Event Folder
Tx End Event
Tx Start Event
Service
Comment
Enabled
Note: Although the default value is false, you will generally want
to set Enabled to true to activate the subscription immediately
when it is added.
Output Parameters
Result
See Also
pub.event:deleteSubscriber
pub.event:modifySubscriber
pub.event:getSubscribers
pub.event:saveEventManagerSettings
pub.event:alarm
WmPublic. Specication for alarm event handlers.
245
Even Header
Event Folder
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/
dd HH:mm:ss.SS .
service
String Fully qualied name of the service that generated the event. A
service can generate an alarm event when a client invokes a service
that accesses information or a service on a remote server. If the client
is not a member of an allowed group for the port on the remote
server, the service will generate an alarm event.
sessionID
String Identication number for the session during which the alarm
event was generated. Some alarm events are not generated during
sessions. In these cases, the sessionID variable will not contain a
value.
msg
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
When you subscribe an event handler to an alarm event, you can create a lter for the
msg eld to specify the services whose alarm events you want to subscribe to. That is,
you can specify which services' alarm events invoke the event handler.
pub.event:alarmInfo
WmPublic. Document type for alarm event information.
Parameters
time
String Date and time that the event occurred, in the format yyyy/
MM/dd HH:mm:ss.SS .
service
String Fully qualied name of the service that generated the event.
sessionID
msg
246
Odd Header
Event Folder
pub.event:audit
WmPublic. Specication for audit event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy-MMdd HH:mm:ss z (for example, "2004-10-28 14:46:39 EDT").
Note: You can set the format for the time parameter in the
wa.server.dateStampFmt property.
TID
service
String Fully qualied name of the service that generated the event.
sessionID
result
executed successfully.
Failed indicates that this event marks the end of a service that
retried.
pipeline
Document Optional. The pipeline that was passed to the service. This
parameter is required only if the service is congured to include the
pipeline when auditing.
userName
String User ID that invoked the service that generated the event.
Output Parameters
None.
247
Even Header
Event Folder
Usage Notes
Events are created for a service only if auditing for that type of event is enabled for the
service. For example, start events will not be created unless auditing for service start is
enabled for that service.
Remember to register your handler with the Event Manager. Not all audit handlers that
you code will log information.
When writing your own audit handler, be careful to not modify the pipeline variable
within your handler.
Use the wa.server.event.audit.async server parameter to indicate whether event
handlers for audit events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to audit events asynchronously. When this parameter is set to false, Integration Server
invokes the event handlers that subscribe to audit events synchronously. The default is
true (asynchronous).
pub.event:auditError
WmPublic. Specication for audit error event handlers.
Input Parameters
time
String Date and time at which the audit error occurred. This
parameter is in the format yyyy-MM-dd HH:mm:ss.SSS (for
example, "2004-10-28 14:46:39.505").
destination
message
Value
ServiceDBDest
ErrorDBDest
SessionDBDest
ProcessAuditDBDest
CoreAuditDBDest
248
Odd Header
Event Folder
stackTrace
errorCode
String Optional. The SQL error code returned with the exception.
Output Parameters
None.
Usage Notes
Remember to register your event handler using pub.event:addSubscriber. Set the EventType
input variable to Audit Error Event.
An audit error event is red in the following situations:
When a SQLException is encountered while trying to insert an audit record into the
audit logging database.
When Integration Server initializes and cannot connect to the audit logging database.
When the Service logger is congured to retry failed auditing aempts, the audit
error event is red for the initial failure and each subsequent failure.
When you subscribe to an audit error event, you can supply a lter to limit the events
that your event handler receives. The lter applies to the concatenated values of the
destination and errorCode elds. You can use the asterisk (*) as a wildcard character in
the lter. The following table shows how you can use lters to limit the events that your
event handler will receive:
This filter...
YourSearchTerm
*YourSearchTerm
YourSearchTerm*
*YourSearchTerm*
249
Even Header
Event Folder
pub.event:auditErrorInfo
WmPublic. Document type for audit error event information.
Input Parameters
time
String Date and time at which the audit error occurred. This
parameter is in the format yyyy-MM-dd HH:mm:ss.SSS (for
example, "2004-10-28 14:46:39.505").
destination
ServiceDBDest
ErrorDBDest
SessionDBDest
ProcessAuditDBDest
CoreAuditDBDest
message
stackTrace
errorCode
String Optional. The SQL error code returned with the exception.
Usage Notes
Use the wa.server.event.audit.async server parameter to indicate whether event
handlers for audit events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe to
audit events asynchronously. When this parameter is set to false, Integration Server
invokes the event handlers that subscribe to audit events synchronously. The default is
true (asynchronous).
250
Odd Header
Event Folder
pub.event:auditInfo
WmPublic. Document type for audit event information.
Parameters
time
String Date and time that the event occurred, in the format yyyy-MMdd HH:mm:ss z (for example, "2004-10-28 14:46:39 EDT").
Note: You can set the format for the time parameter in the
wa.server.dateStampFmt property.
TID
service
String Fully qualied name of the service that generated the event.
sessionID
result
executed successfully.
Failed indicates that this event marks the end of a service that
retried.
pipeline
Document Optional. The pipeline that was passed to the service. This
parameter is required only if the service is congured to include the
pipeline when auditing.
userName
String User ID that invoked the service that generated the event.
Usage Notes
Use the wa.server.event.audit.async server parameter to indicate whether event
handlers for audit events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe to
webMethods Integration Server Built-In Services Reference Version 9.6
251
Even Header
Event Folder
audit events asynchronously. When this parameter is set to false, Integration Server
invokes the event handlers that subscribe to audit events synchronously. The default is
true (asynchronous).
pub.event:callstackItem
WmPublic. Document type for the name of the service in the invocation path when an
exception occurred and the index that indicates the step at which the exception occurred.
Parameters
service
String Fully qualied name of the last service (that is, most recently
called) on the call stack.
owStep
flowStep Value
MAP
SEQUENCE
BRANCH
INVOKE
MAP
SEQUENCE
EXIT
/0
/1
/1/0
/1/0/0
/2
/3
/3/0
If the stack contains a Java service, the owStep value for that
service will be empty.
pub.event:deleteSubscriber
WmPublic. Removes an event handler from the subscription list for a specied event.
Important: Deletions made using this service take eect immediately;
however, they are not made permanent unless you persist them to
disk with the pub.event:saveEventManagerSettings service. If you do not run
pub.event:saveEventManagerSettings after deleting subscribers, your changes will be lost
when the server is restarted.
252
Odd Header
Event Folder
Input Parameters
EventType
Tip: To view the current list of event types, you can execute the
pub.event:getEventTypes service.
String ID of the subscriber that you want to delete. To get a list of
subscriber IDs, execute the pub.event:getSubscribers service.
gID
Output Parameters
Result
253
Even Header
Event Folder
pub.event.eda:event
WmPublic. Document type that denes the structure of an EDA event.
Parameters
evt:Header
Description
evt:Start
evt:End
evt:Kind
evt:Type
{http://namespaces.softwareag.com/EDA/
WebM/Process/1.0}ProcessInstanceChange is
evt:Version
254
Odd Header
Event Folder
evt:Body
evt:CorrelationID
evt:EventID
evt:Priority
evt:ProducerID
evt:UserID
evt:CustomHeaders
Usage Notes
The prex evt is associated with the namespace hp://namespaces.softwareag.com/
EDA/Event. All events belong to this asset namespace.
The pub.event.eda:schema_event schema denes the structure and data types for an EDA
event document.
pub.event.eda:eventToDocument
WmPublic. Converts an EDA event in the form of an XML string to a document instance
in the form of pub.event.eda:event.
Input Parameters
xmldata
255
Even Header
Event Folder
documentTypeName
Output Parameters
evt:Event
Usage Notes
This service transforms each element and aribute in the EDA event to an element in an
IData object.
This service always converts XML nodes to String or Document object elds. It does not
generate constrained objects (for example, Floats or Integers), even if the elds in the
specied document are dened as constrained objects.
The pub.event.eda:event document type determines the overall structure of the evt:Event
IData object that this service returns.
The document type specied for documentTypeName determines the structure of the
event body contained in the evt:Body eld. If you do not specify documentTypeName , the
structure of the event body is determined by the event.
The document type in documentTypeName identies the namespace prexes
to use for the conversion. Integration Server determines the namespace prex
information through the association of the prex in the eld name with the URI
in the XML namespace property of the eld. For example, suppose that a eld in
documentTypeName is named SAG:account and the XML namespace property of that
eld is hp://www.softwareag.com. In the resulting IData object for the event body,
Integration Server will use the prex SAG with any element that belongs to the hp://
www.softwareag.com namespace.
256
Odd Header
Event Folder
pub.event.eda:schema_event
WmPublic. Schema that denes the structure and data types used for the event header in
the pub.event.eda:event document type.
pub.event.eda:send
WmPublic. Deprecated - Replaced by pub.event.nerv:send.
Sends an EDA event to a JMS provider.
Input Parameters
eventTypeName
Document Document that species the qualied name for the event
type for the EDA event.
Key
Description
257
Even Header
Event Folder
documentType
Name
namespaceName
localName
connectionAlias
Name
String Name of the JMS connection alias that you want to use to
send the message.
The JMS connection alias indicates how Integration Server
connects to the JMS provider. A JMS connection alias can
specify that Integration Server use a JNDI provider to look up
administered objects (connection factories and destinations)
and then use the connection factory to create a connection.
Alternatively, a JMS connection alias can specify that Integration
Server uses the native webMethods API to create the connection
directly on the webMethods Broker.
destinationName
258
Odd Header
Event Folder
event
Description
header
body
useCSQ
Key
Description
start
end
version
correlationID
259
Even Header
Event Folder
Description
header
Description
JMSCorrelationID
JMSDeliveryMode
260
Odd Header
Event Folder
JMSDestination
JMSExpiration
java.lang.LongConditional. Time
at which this message expires.
If the message producer did
not specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does not
expire.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message priority. The
JMS standard denes priority
levels from 0 to 9, with 0 as the
lowest priority and 9 as the
highest.
JMSRedelivered
java.lang.Boolean Conditional.
Flag indicating the JMS provider
delivered this message to the
JMS client previously.
True indicates the message may
JMSTimestamp
261
Even Header
Event Folder
JMSType
properties
body
Description
string
Usage Notes
The pub.event.eda:send service sends an event in the form of a JMS message to a JMS
provider. You can send a regular EDA event or a heartbeat event for the specied event
type in eventTypeName . The pub.event.eda:send service infers whether the event is a regular
event or a heartbeat event based on the presence of the body parameter. To send a
heartbeat event, do not specify a value for the body parameter.
Integration Server returns the output parameter JMSMessage because some of the header
elds in a JMS message are populated by the JMS provider after the message is sent. For
example, the header eld JMSMessageID is not in the JMS message sent by Integration
Server, but JMSMessageID is in the header after the JMS provider receives the message.
If the JMS provider is not available at the time pub.event.eda:sendexecutes and useCSQ is
set to true, the header elds in the output JMSMessage will not be populated. Instead
these elds will be blank or be set to 0 (zero).
Each JMS connection alias has its own client side queue. Integration Server places
messages in the client side queue if the JMS provider is not available at the time the
pub.event.eda:send service executes. When the JMS provider becomes available, Integration
Server sends messages from the client side queue to the JMS provider.
If client side queuing is not used (useCSQ is set to false), Integration Server throws an
ISRuntimeException if the JMS provider is not available when this service executes.
Make sure to code your service to handle this situation.
When sending a message as part of a transaction client side queuing cannot be used.
That is, the useCSQ eld should be set to false. If useCSQ is set to true, Integration
Server throws a JMSSubsystemException when the pub.event.eda:send service executes.
webMethods Integration Server Built-In Services Reference Version 9.6
262
Odd Header
Event Folder
A JMS message is sent as part of a transaction if the JMS connection alias specied in
connectionAliasName :
Uses a transaction type of LOCAL_TRANSACTION or XA_TRANSACTION.
Connects to the webMethods Broker using a cluster connection factory to which the
multisend guaranteed policy is applied. Integration Server uses an XA transaction to
perform a two-phase commit when sending JMS messages.
pub.event:error
WmPublic. Specication for error event handlers.
Input Parameters
stackTrace
errorMessage
String The error message, if any, generated by the error that causes
the error event.
serviceName
Output Parameters
None.
Usage Notes
Remember to register your even handler using Event Manager orpub.event:addSubscriber.
The wa.server.event.exception.async server parameter indicates whether event
handlers for error events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to error events asynchronously. When this parameter is set to false, Integration Server
invokes the services that subscribe to the error events synchronously. The default is true
(asynchronous).
An error event handler can have a lter for the contents of errorMessage . The following
lter species that any error event with an errorMessage whose value contains the word
"missing" will invoke the event handler: *missing*
pub.event:errorInfo
WmPublic. Document type for error event information.
263
Even Header
Event Folder
Parameters
stackTrace
errorMessage
String The error message, if any, generated by the error that causes
the error event.
serviceName
Usage Note
The wa.server.event.exception.async server parameter indicates whether event
handlers for error events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to error events asynchronously. When this parameter is set to false, Integration Server
invokes the services that subscribe to the error events synchronously. The default is true
(asynchronous).
An error event handler can have a lter for the contents of errorMessage . The following
lter species that any error event with an errorMessage whose value contains the word
"missing" will invoke the event handler: *missing*
pub.event:exception
WmPublic. Specication for exception event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format
yyyy/MM/dd HH:mm:ss.SS .
Note: You can set the format by specifying the
wa.server.dateStampFmt property.
error
localizedError
errorType
errorDump
264
Odd Header
Event Folder
service
user
String User that requested the service that generated the event.
callStack
pipeline
threadID
ssnid
errorMsgID
errorDetails
nestedErrorInfo
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Not all exception handlers that you code will log information.
Use the wa.server.event.exception.async server parameter to indicate whether event
handlers for exception events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
265
Even Header
Event Folder
pub.event:exceptionInfo
WmPublic. Document type for exception information.
Parameters
time
String Date and time that the event occurred, in the format
yyyy/MM/dd HH:mm:ss.SS .
error
localizedError
errorType
errorDump
service
user
String User that requested the service that generated the event.
callStack
pipeline
266
Odd Header
Event Folder
threadID
ssnid
errorMsgID
errorDetails
nestedErrorInfo
Usage Notes
Use the wa.server.event.exception.async server parameter to indicate whether event
handlers for exception events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to exception events asynchronously. When this parameter is set to false, Integration
Server invokes the services that subscribe to the exception events synchronously. The
default is true (asynchronous).
pub.event:gdEnd
WmPublic. Specication for gdEnd event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS .
TID
result
Output Parameters
None.
267
Even Header
Event Folder
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.gd.async server parameter to indicate whether event handlers
for all guaranteed delivery events (gdStart and gdEnd) are invoked synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to the gdStart and/or gdEnd events asynchronously.
When this parameter is set to false, Integration Server invokes the event handlers
that subscribe to the gdStart and/or gdEnd events synchronously. The default is true
(asynchronous).
pub.event:gdEndInfo
WmPublic. Document type for gdEnd event information.
Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS.
TID
result
Usage Notes
Use the wa.server.event.gd.async server parameter to indicate whether event handlers
for all guaranteed delivery events (gdStart and gdEnd) are invoked synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to the gdStart and/or gdEnd events asynchronously.
When this parameter is set to false, Integration Server invokes the event handlers
that subscribe to the gdStart and/or gdEnd events synchronously. The default is true
(asynchronous).
pub.event:gdStart
WmPublic. Specication for gdStart event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS.
268
Odd Header
Event Folder
TID
svcname
String Fully qualied name of the service that generated the event.
result
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.gd.async server parameter to indicate whether event handlers
for all guaranteed delivery events (gdStart and gdEnd) are invoked synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to the gdStart and/or gdEnd events asynchronously.
When this parameter is set to false, Integration Server invokes the event handlers
that subscribe to the gdStart and/or gdEnd events synchronously. The default is true
(asynchronous).
When you subscribe an event handler to a gdStart event, you can create a lter for the
svcname eld to specify the services in a guaranteed delivery transaction that you want
to subscribe to. That is, you can specify the services that when invoked using guaranteed
delivery will invoke the event handler.
pub.event:gdStartInfo
WmPublic. Document type for gdStart event information.
Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS .
TID
svcname
String Fully qualied name of the service that generated the event.
result
Usage Notes
Use the wa.server.event.gd.async server parameter to indicate whether event handlers
for all guaranteed delivery events (gdStart and gdEnd) are invoked synchronously or
webMethods Integration Server Built-In Services Reference Version 9.6
269
Even Header
Event Folder
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to the gdStart and/or gdEnd events asynchronously.
When this parameter is set to false, Integration Server invokes the event handlers
that subscribe to the gdStart and/or gdEnd events synchronously. The default is true
(asynchronous).
pub.event:getEventTypes
WmPublic. Returns the list of supported event types on Integration Server.
Input Parameters
None.
Output Parameters
EventTypes
Usage Note
The pub.event:getEventTypes service returns a list of supported local event types on
Integration Server. The service does not return a list of EDA event types in the event
store.
pub.event:getSubscribers
WmPublic. Returns the list of subscribers for a specied event type.
270
Odd Header
Event Folder
Input Parameters
EventType
String Type of event for which you want the list of subscribers. Must
be one of the following values:
Alarm Event
Audit Event
Audit Error Event
Exception Event
GD End Event
GD Start Event
JMS Delivery Failure Event
JMS Retrieval Failure Event
Port Status Event
Replication Event
Security Event
Session End Event
Session Expire Event
Session Start Event
Stat Event
Tx End Event
Tx Start Event
Tip: To view the current list of event types, you can execute the
pub.event:getEventTypes service.
Output Parameters
Subscribers
Description
Service
Filter
271
Even Header
Event Folder
uppercase "M."
gID
Enabled
See Also
pub.event:addSubscriber
pub.event:modifySubscriber
pub.event:deleteSubscriber
pub.event:jmsReceiveErrorEvent
WmPublic. Specication for a JMS retrieval failure event handler.
Input Parameters
triggerName
triggerDestinationIndex
272
Odd Header
Event Folder
deliveryCount
time
String Date and time that the event occurred, in the format
yyyy/MM/dd HH:mm:ss.SS
exceptionClass
String Name of the class that caused the failure. This may
be useful to determine programmatically why the error
occurred.
exceptionMessage
data
Description
JMSMessage
Output Parameters
None
Usage Notes
A JMS retrieval failure event occurs in the following situations:
A trigger service executed by a JMS trigger throws a non-transient error and the
wa.server.jms.trigger.raiseEventOnException property is set to true (the default).
A trigger service associated with a JMS trigger ends because of a
transient error, all retry aempts have been made, and the JMS trigger
is congured to throw an exception on retry failure. In addition, the
wa.server.jms.trigger.raiseEventOnRetryFailure property is set to true (the
default).
The maximum delivery count from the JMS provider has been met for the message
and the wa.server.jms.trigger.raiseEventOnRetryFailure property is set to true (the
default).
The wa.server.jms.trigger.maxDeliveryCountproperty species the maximum
number of times the JMS provider can deliver a message to Integration Server. The
default is 100. In a JMS message, the property JMSXDeliveryCount species the
number of times the JMS provider delivered the message. Most JMS providers set
this value.
273
Even Header
Event Folder
pub.event:jmsSendErrorEvent
WmPublic. Specication for the JMS delivery failure event handler.
Input Parameters
aliasName
String Name of the JMS connection alias used to send the message to
the JMS provider.
time
String Date and time that the event occurred, in the format yyyy/MM/
dd HH:mm:ss.SS.
data
Document Contents of the JMS message that could not be sent to the
JMS provider.
Output Parameters
None
274
Odd Header
Event Folder
Usage Notes
Integration Server generates a JMS delivery failure event when a message wrien to the
client side queue cannot be delivered to the JMS provider. When a transient error occurs,
several delivery aempts may have been made.
You might want to create an event handler for a JMS delivery failure event to send
notication or log information about the undelivered JMS message. You can also create
an event handler that aempts to re-send the message to the JMS provider.
Remember to register your event handler with the Event Manager.
Use the wa.server.event.jmsDeliveryFailureError.async server parameter to indicate
whether event handlers for JMS delivery failure events are invoked synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to JMS delivery failure events asynchronously. When this
parameter is set to false, Integration Server invokes the event handlers that subscribe to
the JMS delivery failure events synchronously. The default is true (asynchronous).
pub.event:journal
WmPublic. Specication for journal event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/
mm/dd hh:mm:ss.ss.
productID
String Name of the product that generated the journal log message
and the event.
majorCode
minorCode
severity
275
Even Header
Event Folder
defaultMessage
String Default message associated with the major code and minor
code. The actual message may dier from the default message.
For example the default message might be Package WmART
is stopping due to {0}, where {0} is a placeholder for a run-time
parameter. The actual message generated at run time might be
Package WmART is stopping due to ServiceException.
Output Parameters
None.
Usage Notes
Remember to register your even handler using Event Manager orpub.event:addSubscriber.
A journal event handler can have a lter for the major code and minor code of the
generated event. The format of the lter is <majorCode>.<minorCode>. For example,
the following lter species that any journal event with major code of 28 followed by a
minor code of 34 will invoke the event handler: *28.34*
If a journal event is created when synchronously or asynchronously. When this
parameter is set to true, Integration Server writes the following log message
"[ISS.0028.0034I] Package WmISExtDC is stopping " the journal event handler will be
passed the following information in addition to the time value:
productID : ISS
majorCode : 28
minorCode : 34
severity : 4
defaultMessage : Package WmISExtDC is stopping
The wa.server.event.exception.async server parameter indicates whether event
handlers for journal events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe to
journal events asynchronously. When this parameter is set to false, Integration Server
invokes the services that subscribe to the journal events synchronously. The default is
true (asynchronous).
pub.event:journalInfo
WmPublic. Document type for journal event information
Parameters
time
String Date and time that the event occurred, in the format yyyy/
mm/dd hh:mm:ss.ss.
276
Odd Header
Event Folder
productID
String Name of the product that generated the journal log message
and the event.
majorCode
minorCode
severity
defaultMessage
String Default message associated with the major code and minor
code. The actual message may dier from the default message.
For example the default message might be Package WmART
is stopping due to {0}, where {0} is a placeholder for a run-time
parameter. The actual message generated at run time might be
Package WmART is stopping due to ServiceException.
Usage Notes
If a journal event is created when synchronously or asynchronously. When this
parameter is set to true, Integration Server writes the following log message
"[ISS.0028.0034I] Package WmISExtDC is stopping " the journal event handler will be
passed the following information in addition to the time value:
productID : ISS
majorCode : 28
minorCode : 34
severity : 4
defaultMessage : Package WmISExtDC is stopping
The wa.server.event.exception.async server parameter indicates whether event
handlers for journal events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe to
journal events asynchronously. When this parameter is set to false, Integration Server
invokes the services that subscribe to the journal events synchronously. The default is
true (asynchronous).
277
Even Header
Event Folder
pub.event:modifySubscriber
WmPublic. Modies the information about a subscription.
Important: The changes you make with this service take eect immediately;
however, they are not made permanent unless you also persist them to
disk with the pub.event:saveEventManagerSettings service. If you do not run
pub.event:saveEventManagerSettings after modifying subscribers, your changes will be lost
when the server is restarted.
Input Parameters
EventType
Tip: To view the current list of event types, you can execute the
pub.event:getEventTypes service.
gID
Filter
String Filter that you want subscription to have. Filter is a paernmatching string composed of literal characters, which match a
character exactly, and/or the "*" character, which matches any
sequence of characters. For example:
278
Odd Header
Event Folder
Would match...
Any string
M*
M*X
The following table shows the aribute that is ltered for each
event type. Note that some event types cannot be ltered.
EventType
Filtered attribute
Alarm Event
Audit Event
Error Event
Exception Event
GD End Event
GD Start Event
279
Even Header
Event Folder
Journal Event
Replication Event
Security Event
280
Odd Header
Event Folder
Stat Event
Tx End Event
Tx Start Event
Service
Comment
Enabled
Output Parameters
Result
See Also
pub.event:addSubscriber
pub.event:deleteSubscriber
pub.event:getSubscribers
pub.event:saveEventManagerSettings
281
Even Header
Event Folder
pub.event.nerv:eventToDocument
WmPublic. Converts an incoming JMS message into an IS document (pub.event.eda:event).
Input Parameters
JMSMessage
documentTypeName
Output Parameters
evt:Event
Usage Notes
This service maps various properties from a JMS message to an event document. It also
maps the body from JMS message to the body on the event document.
See Also
pub.jms:JMSMessage
pub.event.eda:event
282
Odd Header
Event Folder
pub.event.nerv:send
WmPublic. Sends an EDA event to the Network for Event Routing and Variation
(NERV). Integration Server constructs an EDA event using the parameters dened in the
service, and then sends the event to NERV.
Note: NERV is a framework that enables applications to communicate using events. It
uses the Apache Camel integration framework for event routing, ltering, and variation.
By default, NERV uses a Camel component that is congured for JMS as the transport
layer and JNDI destinations as the endpoints. For more information about using NERV
and conguring other providers, see webMethods Event Processing Help.
Input Parameters
documentType
Name
event
Description
header
Description
Start
283
Even Header
Event Folder
Kind
Type
Version
CorrelationID
EventID
Priority
284
Odd Header
Event Folder
body
endpointUris
ProducerID
UserID
CustomHeaders
Output Parameters
None.
Usage Notes
The pub.event.nerv:send service sends an event in the form of a Camel message to NERV.
NERV then routes this event to all consumers that have registered a listener for the event
type. You can send a regular EDA event or a heartbeat event for the specied event type
in header/Type . The pub.event.nerv:send service infers whether the event is a regular event
or a heartbeat event based on the presence of the body parameter. To send a heartbeat
event, do not specify a value for the body parameter.
Some aribute values might be inserted into the event by NERV if the event producer
does not supply one. For example, EventID and Start will be assigned if the event
producer does not supply one.
This service replaces pub.event.eda:send, which is deprecated.
285
Even Header
Event Folder
pub.event:portStatus
WmPublic. Specication for a port status event.
Input Parameters
portStatusInfo
Description
time
port
status
protocol
primary
enabled
Output Parameters
None.
pub.event:portStatusInfo
WmPublic. Document type for port event information.
286
Odd Header
Event Folder
Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/
dd HH:mm:ss.SS .
port
status
protocol
primary
enabled
pub.event:reloadEventManagerSettings
WmPublic. Reloads the seings from the event manager's conguration le
(eventcfg.bin) on the server.
Input Parameters
None.
Output Parameters
None.
See Also
pub.event:saveEventManagerSettings
pub.event:replication
WmPublic. Specication for replication event handlers.
287
Even Header
Event Folder
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS .
action
package
service
String Fully qualied name of the service that generated the event.
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager. When you subscribe an
event handler to a replication event, you can create a lter to specify the package that,
when replicated, will invoke the event handler.
Use the wa.server.event.replication.async server parameter to indicate whether event
handlers for replication events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to replication events asynchronously. When this parameter is set to false, Integration
Server invokes event handlers that subscribe to replication events synchronously. The
default is true (asynchronous).
pub.event:replicationInfo
WmPublic. Document type for replication event information.
Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/dd
HH:mm:ss.SS .
action
package
service
String Fully qualied name of the service that generated the event.
288
Odd Header
Event Folder
Usage Notes
Use the wa.server.event.replication.async server parameter to indicate whether event
handlers for replication events are invoked synchronously or asynchronously. When this
parameter is set to true, Integration Server invokes the event handlers that subscribe
to replication events asynchronously. When this parameter is set to false, Integration
Server invokes event handlers that subscribe to replication events synchronously. The
default is true (asynchronous).
pub.event:saveEventManagerSettings
WmPublic. Saves the current subscriber information to the event manager's
conguration le (eventcfg.bin) on the server.
Important: Always run this service after making any permanent changes to subscriber
information (for example, add subscribers, modify subscribers, or delete subscribers).
Otherwise, your changes will be lost the next time the server is restarted.
Input Parameters
None.
Output Parameters
None.
See Also
pub.event:addSubscriber
pub.event:deleteSubscriber
pub.event:modifySubscriber
pub.event:reloadEventManagerSettings
pub.event:security
WmPublic. Specication for security event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format
yyyy/MM/dd HH:mm:ss.SS .
clientID
289
Even Header
Event Folder
serverID
userName
securityEventType
clientApplication
result
successfully.
failure.
message
290
Odd Header
Event Folder
Output Parameters
None.
Usage Notes
Use the wa.server.event.security.async server parameter to indicate whether
Integration Server invokes event handlers for security events synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to security events asynchronously. When this parameter is
set to false, Integration Server invokes event handlers that subscribe to security events
synchronously. The default is true (asynchronous).
pub.event:securityInfo
WmPublic. Document type for security event information.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/
MM/dd HH:mm:ss.SS .
clientID
serverID
userName
securityEventType
291
Even Header
Event Folder
result
failure.
message
Output Parameters
None.
Usage Notes
Use the wa.server.event.security.async server parameter to indicate whether
Integration Server invokes event handlers for security events synchronously or
asynchronously. When this parameter is set to true, Integration Server invokes the
event handlers that subscribe to security events asynchronously. When this parameter is
set to false, Integration Server invokes event handlers that subscribe to security events
synchronously. The default is true (asynchronous).
pub.event:sessionEnd
WmPublic. Specication for sessionEnd event handlers.
Input Parameters
time
String Date and time that the event occurred, in the format yyyy/MM/
dd HH:mm:ss.SS .
sessionID
292
Odd Header
Event Folder
rpcs
age
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
pub.event:sessionEndInfo
WmPublic. Document type for sessionEnd event information.
Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
sessionID
rpcs
age
Usage Notes
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
293
Even Header
Event Folder
pub.event:sessionExpire
WmPublic. Specication for sessionExpire event handlers.
Input Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
sessionID
rpcs
age
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
pub.event:sessionExpireInfo
WmPublic. Document type for sessionExpire event information.
Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
sessionID
294
Odd Header
Event Folder
rpcs
age
Usage Notes
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
pub.event:sessionStart
WmPublic. Specication for sessionStart event handlers.
Input Parameters
time
String Date and time that the event occurred. Given in the format
yyyy/MM/dd HH:mm:ss.SS .
sessionID
userid
sessionName
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager. When you subscribe an
event handler to a Session Start event, you can create a lter so that only session start
events generated by a specic user or by a member of a specic group invoke the event
handler.
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
webMethods Integration Server Built-In Services Reference Version 9.6
295
Even Header
Event Folder
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
pub.event:sessionStartInfo
WmPublic. Document type for sessionStart event information.
Parameters
time
String Date and time that the event occurred. Given in the format
yyyy/MM/dd HH:mm:ss.SS .
sessionID
userid
sessionName
Usage Notes
Use the wa.server.event.session.async server parameter to indicate whether Integration
Server invokes event handlers for session events (sessionStart, sessionEnd, and
sessionExpire) synchronously or asynchronously. When this parameter is set to
true, Integration Server invokes event handlers that subscribe to the session events
asynchronously. When this parameter is set to false, Integration Server invokes
event handlers that subscribe to the session events synchronously. The default is true
(asynchronous).
pub.event:stat
WmPublic. Specication for stat event handlers.
Input Parameters
startTime
String Date and time that the event occurred. Given in the
format yyyy/MM/dd HH:mm:ss.SS .
uptime
String Amount of time the server has been up. Given in the
format yyyy/MM/dd HH:mm:ss.SS .
296
Odd Header
Event Folder
totalMem
freeMem
usedMem
freeMemPer
usedMemPer
svrT
svrTMax
sysT
sysTMax
conn
connMax
reqTotal
reqAvg
newReqPM
endReqPM
errSvc
svcRate
ssnUsed
297
Even Header
Event Folder
ssnPeak
ssnMax
errSys
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.stat.async server parameter to indicate whether Integration
Server invokes event handlers for statistics events synchronously or asynchronously.
When this parameter is set to true, Integration Server invokes event handlers that
subscribe to the stat event asynchronously. When this parameter is set to false,
Integration Server invokes event handlers that subscribe to stat events synchronously.
The default is true (asynchronous).
pub.event:statInfo
WmPublic. Document type for stat event information.
Parameters
startTime
String Date and time that the event occurred. Given in the
format yyyy/MM/dd HH:mm:ss.SS .
uptime
String Amount of time the server has been up. Given in the
format yyyy/MM/dd HH:mm:ss.SS .
totalMem
freeMem
298
Odd Header
Event Folder
usedMem
freeMemPer
usedMemPer
svrT
svrTMax
sysT
sysTMax
conn
connMax
reqTotal
reqAvg
newReqPM
endReqPM
errSvc
svcRate
ssnUsed
ssnPeak
ssnMax
errSys
299
Even Header
Event Folder
Usage Notes
Use the wa.server.event.stat.async server parameter to indicate whether Integration
Server invokes event handlers for statistics events synchronously or asynchronously.
When this parameter is set to true, Integration Server invokes event handlers that
subscribe to the stat event asynchronously. When this parameter is set to false,
Integration Server invokes event handlers that subscribe to stat events synchronously.
The default is true (asynchronous).
pub.event:txEnd
WmPublic. Specication for txEnd event handlers.
Input Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
TID
result
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.tx.async server parameter to indicate whether Integration
Server invokes event handlers for transaction events (txStart and txEnd) synchronously
or asynchronously. When this parameter is set to true, Integration Server invokes
event handlers that subscribe to the txStart or txEnd events asynchronously. When this
parameter is set to false, Integration Server invokes event handlers that subscribe to the
txStart or txEnd events synchronously. The default is true (asynchronous).
pub.event:txEndInfo
WmPublic. Document type for txEnd event information.
300
Odd Header
Event Folder
Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
TID
result
Usage Notes
Use the wa.server.event.tx.async server parameter to indicate whether Integration
Server invokes event handlers for transaction events (txStart and txEnd) synchronously
or asynchronously. When this parameter is set to true, Integration Server invokes
event handlers that subscribe to the txStart or txEnd events asynchronously. When this
parameter is set to false, Integration Server invokes event handlers that subscribe to the
txStart or txEnd events synchronously. The default is true (asynchronous).
pub.event:txStart
WmPublic. Specication for txStart event handlers.
Input Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
TID
result
Output Parameters
None.
Usage Notes
Remember to register your handler with the Event Manager.
Use the wa.server.event.tx.async server parameter to indicate whether Integration
Server invokes event handlers for transaction events (txStart and txEnd) synchronously
or asynchronously. When this parameter is set to true, Integration Server invokes
event handlers that subscribe to the txStart or txEnd events asynchronously. When this
301
Even Header
Event Folder
parameter is set to false, Integration Server invokes event handlers that subscribe to the
txStart or txEnd events synchronously. The default is true (asynchronous).
pub.event:txStartInfo
WmPublic. Document type for txStart event information.
Parameters
time
String Date and time that the event occurred. Given in the format yyyy/
MM/dd HH:mm:ss.SS .
TID
result
Usage Notes
Use the wa.server.event.tx.async server parameter to indicate whether Integration
Server invokes event handlers for transaction events (txStart and txEnd) synchronously
or asynchronously. When this parameter is set to true, Integration Server invokes
event handlers that subscribe to the txStart or txEnd events asynchronously. When this
parameter is set to false, Integration Server invokes event handlers that subscribe to the
txStart or txEnd events synchronously. The default is true (asynchronous).
302
Odd Header
File Folder
8 File Folder
File Access Control Configuration for the pub.file Services .......................................................
304
304
305
303
Even Header
File Folder
You use the elements in the le folder to perform operations on the local le system.
Parameter Settings
The following table shows the parameter seings for the leAccessControl.cnf le:
Parameter
Description
allowedReadPaths
allowedWritePaths
allowedDeletePaths
When modifying the parameters in the leAccessControl.cnf le, keep the following
points in mind:
Use a semicolon (;) as the delimiter when listing multiple directories. Do not include
spaces between directory paths.
If a le or directory name has a semicolon (;), use backslashes (\\) before the
semicolon while specifying the allowed paths. For example, if the lename is c:/
temp/ab;c.txt, specify it as c:/temp/ab\\;c.txt.
If a directory name is listed, access is allowed to all les in that directory, but not to
the subdirectories.
If a le name is listed, access is allowed only to that le.
For example, the following entry will allow the services in pub.le folder to write to
any le in the c:/wm8/test directory, as well as to the le c:/wm8/test.txt.
allowedWritePaths=C:/wm8/test;C:/wm8/test.txt
304
Odd Header
File Folder
You can use the wildcard character asterisk (*) to match multiple folders, subfolders,
and les. A single asterisk (*) wildcard can be used to denote single directory names.
Double asterisks (**) can be used to denote multiple les and subfolders in a folder.
For example, the following entry will allow the services in pub.le folder to write to
all the .log les in the rst subdirectory whose name start with 'fatal' in the c:/home/
directory:
allowedWritePaths=C:/home/fatal*/*.log
The following entry will allow the services in pub.le folder to write to all les in all
the subdirectories of c:/home directory:
allowedWritePaths=C:/home/**
The asterisk (*) is the only wildcard character you can use. All other characters are
treated as literals.
You cannot use a wildcard character to match any les in the root directory.
Integration Server ignores the entries that use asterisks to match a le in the root
directory.
For example, Integration Server will ignore the following entry:
allowedWritePaths = **
pub.file:bytesToFile
pub.file:checkFileExistence
pub.file:copyFile
pub.file:deleteFile
pub.file:getFile
pub.file:listFiles
pub.file:moveFile
305
Even Header
File Folder
Element
pub.file:readerToFile
pub.file:streamToFile
pub.file:stringToFile
pub.file:bytesToFile
WmPublic. Writes the specied byte array to a le.
Input Parameters
leName
String The absolute path name of the le to which to write the byte
array.
bytes
append
Output Parameters
length
Usage Notes
For security reasons, the pub.file:bytesToFile service checks the input leName parameter
against the list of allowedWritePaths values specied in the FileAccessControl
conguration le. If the input leName is not on the allowed list, Integration Server
throws an exception. For information about conguring the FileAccessControl
conguration le, refer to "File Access Control Conguration for the pub.le Services"
on page 304.
306
Odd Header
File Folder
pub.file:checkFileExistence
WmPublic. Checks if a specied le exists, and if the le exists, checks whether the le
name represents a le or a directory.
Input Parameters
leName
Output Parameters
exists
isDirectory
Usage Notes
For security reasons, the pub.file:checkFileExistence service checks the input leName
parameter against the list of allowedReadPaths values specied in the FileAccessControl
conguration le. If the input leName is not on the allowed list, Integration Server
throws an exception. For information about conguring the FileAccessControl
conguration le, refer to "File Access Control Conguration for the pub.le Services"
on page 304.
pub.file:copyFile
WmPublic. Copies a le from one directory to another.
If a le with the same name as the le being copied exists in the targetDirectory , the
pub.file:copyFile service throws an error on execution.
Input Parameters
leName
307
Even Header
File Folder
targetDirectory
appendTimestamp
yyyyMMddHHmmss format.
Output Parameters
String The absolute path name of the target le to which the
leName parameter is copied.
targetFileName
Usage Notes
For security reasons, the pub.file:copyFile service checks the input leName against the list
of allowedReadPaths and the input targetDirectory against the list of allowedWritePaths
specied in the FileAccessControl conguration le. If the le name or directory is not
specied in the respective allowed lists, Integration Server throws an exception. For
information about conguring the FileAccessControl conguration le, refer to "File
Access Control Conguration for the pub.le Services" on page 304.
pub.file:deleteFile
WmPublic. Deletes the specied le.
Input Parameters
lename
Output Parameters
status
Usage Notes
For security reasons, the pub.file:deleteFile service checks the input leName parameter
against the list of allowedDeletePaths values specied in the FileAccessControl
webMethods Integration Server Built-In Services Reference Version 9.6
308
Odd Header
File Folder
conguration le. If the input leName is not on the allowed list, Integration Server
throws an exception. For information about conguring the FileAccessControl
conguration le, refer to "File Access Control Conguration for the pub.le Services"
on page 304.
pub.file:getFile
WmPublic. Retrieves a specied le from the local le system.
If the le contains an XML document, you can use the services in the XML Folder to
convert it to an XML node.
Input Parameters
lename
String The absolute path name of the le in the local le system (for
example c:\rubicon\document.xml).
loadAs
String Optional. Form in which you want the getFile service to make
the contents of the le available to subsequent services. Set to:
bytes to return the le as a byte array. Use this option if the
encoding
buerSize
String Optional. Buer size (in bytes) to use if you are loading an
InputStream (that is, loadAs =stream). The default is 4096 bytes.
309
Even Header
File Folder
Output Parameters
Document Document (IData object) containing the le as a byte[ ],
InputStream, string, or reader. The body parameter will contain
one of the following keys, depending on how the loadAs parameter
was set:
body
Key
Description
bytes
stream
reader
string
Usage Notes
The getFile service does not automatically generate an XML node from the contents of
the le. To generate an XML node, the output from this service must be passed to the
pub.xml:xmlStringToXMLNode service.
See Also
pub.io:close
pub.file:listFiles
WmPublic. List all the les in a specied directory.
The pub.file:listFiles service does not list subdirectories or recursively list subdirectory
contents.
Input Parameters
directory
310
Odd Header
File Folder
lter
String Optional. Filter string for the le list (for example, *.java or
EDI*.tx*).
Output Parameters
lelist
numFiles
Usage Notes
For security reasons, the pub.file:listFiles service checks the value of the directory parameter
against the list of allowedReadPaths values specied in the FileAccessControl
conguration le. If the specied directory is not on the allowed list, the service throws
an exception. For information about conguring the FileAccessControl conguration
le, refer to "File Access Control Conguration for the pub.le Services" on page 304.
pub.file:moveFile
WmPublic. Moves a le from one directory to another.
If a le with the same name as the leName parameter exists in the target directory, the
pub.file:moveFile service throws an error.
Input Parameters
leName
targetDirectory
appendTimeStamp
default.
format: yyyyMMddHHmmss.
311
Even Header
File Folder
Output Parameters
status
targetFileName
Usage Notes
For security reasons, the pub.file:moveFile service checks the input leName parameter
against the list of allowedReadPaths and the input targetDirectory against the list of
allowedWritePaths specied in the FileAccessControl conguration le. If the provided
le name or directory is not specied in the respective allowed lists, Integration
Server throws an exception. For information about conguring the FileAccessControl
conguration le, see "File Access Control Conguration for the pub.le Services" on
page 304.
If the service cannot move the le by using the default move operation in Java, the
service copies the le from the source directory to the destination directory, and then
removes the le from the source directory.
pub.file:readerToFile
WmPublic. Reads data from a java.io.Reader object and writes it to a le.
Input Parameters
leName
reader
append
312
Odd Header
File Folder
encoding
pub.file:streamToFile
WmPublic. Writes the data in the InputStream to a le.
Input Parameters
leName
stream
append
Output Parameters
None.
313
Even Header
File Folder
Usage Notes
For security reasons, the pub.file:streamToFile service checks the input leName parameter
against the list of allowedWritePaths values specied in the FileAccessControl
conguration le. If the input leName is not on the allowed list, an exception is thrown.
For information about conguring the FileAccessControl conguration le, refer to "File
Access Control Conguration for the pub.le Services" on page 304.
The streamToFile service does not automatically close the stream object. To close the input
stream, use the pub.io:close service.
pub.file:stringToFile
WmPublic. Writes text to a le.
Input Parameters
leName
data
append
encoding
Output Parameters
None.
Usage Notes
For security reasons, the pub.file:stringToFile service checks the input leName parameter
against the list of allowedWritePaths values specied in the FileAccessControl
conguration le. If the input leName is not on the allowed list, an exception is thrown.
webMethods Integration Server Built-In Services Reference Version 9.6
314
Odd Header
File Folder
For information about conguring the FileAccessControl conguration le, refer to "File
Access Control Conguration for the pub.le Services" on page 304.
315
Even Header
316
Odd Header
Flat File Folder
318
317
Even Header
Flat File Folder
Use the elements in the Flat File folder to convert between Flat File documents and IS
documents (IData objects), and to manage dictionary entries, entire at le dictionaries,
and at le schemas.
pub.flatFile:convertToString
WmFlatFile. Converts an IS
document (IData object) to a at
le document based on the at le
schema that you specify.
pub.flatFile:convertToValues
WmFlatFile. Converts a at le
document to an IS document
(IData object) based on the input
at le schema.
pub.flatFile:FormatService
pub.flatFile:getSupportedEncodings
pub.flatFile.generate:createDocumentType
WmFlatFile. Creates an IS
document type that denes the
XML representation of a at le
schema.
pub.flatFile.generate:createFFDictionary
318
Odd Header
Flat File Folder
Element
pub.flatFile.generate:deleteFFDictionary
WmFlatFile. Deletes a at le
dictionary.
pub.flatFile.generate:deleteFFDictionaryEntry
pub.flatFile.generate:deleteFFSchema
WmFlatFile. Deletes a at le
schema.
pub.flatFile.generate:FFDictionary
pub.flatFile.generate:FFSchema
pub.flatFile.generate:findDependants
pub.flatFile.generate:findReferences
pub.flatFile.generate:getFFDictionaryAsXML
319
Even Header
Flat File Folder
Element
pub.flatFile.generate:getFFDictionaryEntryAsXML
pub.flatFile.generate:getFFSchemaAsXML
pub.flatFile.generate:listFFDictionaryEntries
pub.flatFile.generate:saveXMLAsFFDictionary
WmFlatFile. Creates a at le
dictionary in the Integration Server
namespace by converting the
specied at le dictionary that is
in XML format into a namespace
at le dictionary.
pub.flatFile.generate:saveXMLAsFFSchema
WmFlatFile. Creates a at le
schema in the Integration Server
namespace by converting the
specied at le schema that is in
XML format into a namespace at
le schema.
pub.flatFile.generate:updateFFDictionaryEntryFromXML
pub.flatFile:convertToString
WmFlatFile. Converts an IS document (IData object) to a at le document based on the
at le schema that you specify.
By default, this service returns the document as a string, but you can set a ag to
optionally return the document as a byte array instead.
Note: This service does not validate the document.
Input Variables
Values
320
Odd Header
Flat File Folder
Schema
spacePad
originalError
Value
Description
left
right
none
No spaces added.
Description
false
true
Description
true
321
Even Header
Flat File Folder
noEmptyTrailing
SubFields
delimiters
Value
Description
true
false
Description
record
eld
subeld
322
Odd Header
Flat File Folder
release
quotedRelease
FormatInfo
outputFileName
Encoding
String The type of encoding used to write data to the output le.
The default encoding is UTF8.
sortInput
String Optional. Whether you want the service to sort the input
records to match the at le schema specied in Schema . You
should specify true for sortInput if the data in Values is not in the
same order as dened by Schema .
Value
Description
true
323
Even Header
Flat File Folder
returnAsBytes
false
Value
Description
false
true
Output Variables
string
bytes
errorArray
Usage Note
When the pub.flatFile:convertToString service executes, the eld that is dened to start after
the end of the xed length record will not be included in the output data if the following
conditions are met:
The at le schema uses a xed length record delimiter.
The at le schema contains a xed position eld that begins beyond the dened
length of the xed length record.
The input to the pub.flatFile:convertToString service contains a value for the xed position
eld that begins beyond the dened length of the xed length record.
324
Odd Header
Flat File Folder
pub.flatFile:convertToValues
WmFlatFile. Converts a at le document to an IS document (IData object) based on the
input at le schema.
Input Variables
Data
Schema
String The full name of the at le schema object used to parse the
Data object.
Iterator
encoding
delimiters
023)
Description
325
Even Header
Flat File Folder
record
eld
subeld
release
quotedRelease
FormatInfo
iterate
String Optional. Whether you want to process the input all at one
time.
Value
Description
true
false
326
Odd Header
Flat File Folder
createIfNull
skipWhiteSpace
String Optional. Whether to create the IData object if all the elds
are null.
Value
Description
true
false
keepResults
validate
Value
Description
true
false
Description
true
false
Description
327
Even Header
Flat File Folder
returnErrors
true
false
Description
asArray
inResults
both
maxErrors
ags
Description
addRecordCount
Description
true
328
Odd Header
Flat File Folder
detailedErrors
skipToFirstRecord
Description
true
false
Description
true
329
Even Header
Flat File Folder
false
trimWhitespace
resultAsArray
Description
none
left
right
both
Description
false
true
330
Odd Header
Flat File Folder
Output Variables
Values
Iterator
isValid
errors
Value
Description
true
false
Usage Note
If you specied a default record denition by which the pub.flatFile:convertToValues service
parses the IS document (IData object), the service displays the resulting recordWithNoID
document as a child of the document above it, in an array.
To display the recordWithNoID record as a child of the root, change the value
of the recWithNoIDLike46 to true in the Integration Server_directory\instances
\instance_name \packages\WmFlatFile\cong\ le and reload the WmFlatFile
package so that this conguration seing will take eect. For more information, see the
Flat File Schema Developers Guide.
pub.flatFile:FormatService
WmFlatFile. Service that formats the eld String in a at le schema or dictionary and
ensures that the value of the String meets the format restrictions of the format service.
Use this specication when you create format services for elds in a at le schema or
dictionary. The format service is invoked for a eld when the pub.flatFile:convertToValues
and pub.flatFile:convertToString services are invoked. You create a format service to format
webMethods Integration Server Built-In Services Reference Version 9.6
331
Even Header
Flat File Folder
the eld String and ensure that the value of the String meets the format restrictions of
the format service. When creating a particular format service for use with the Format
Service property in a at le schema or dictionary, the service you select must implement
the pub.flatFile:FormatService specication (located on its Input/Output tab).
Important: If a particular eld does not have a value (that is, a value is not returned in the
IS document (IData object) for the pub.flatFile:convertToValues service or is not present in the
input data for the pub.flatFile:convertToValues service) the format service assigned to that
eld will not be executed.
Input Variables
value
direction
Description
validate
minLength
false
332
Odd Header
Flat File Folder
maxLength
FormatInfo
Output Variables
formaedValue
meetsFormat
Description
true
false
333
Even Header
Flat File Folder
errorMessage
valueToValidate
String The value that will be used by the validator for this eld.
If this value is not present, the value passed in the input variable
value will be validated. This eld is used only for situations in
which the input variable validate is set to true.
maxLength
FormatInfo
pub.flatFile:getSupportedEncodings
WmFlatFile. Returns a list of supported encodings. This service will only report
webMethods encodings, not Java defaults. That is, if you do not have converters.jar
installed, it returns null.
334
Odd Header
Flat File Folder
Input Variables
None.
Output Variables
encodings
pub.flatFile.generate:createDocumentType
WmFlatFile. Creates an IS document type that denes the XML representation of a at
le schema.
Input Variables
FlatFileSchema
PackageName
DocumentType
Name
Output Variables
None.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:createFFDictionary
WmFlatFile. Creates an empty at le dictionary. This service throws an exception is if
the at le dictionary you want to create already exists when the service is invoked.
335
Even Header
Flat File Folder
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary you want
to create.
PackageName
Output Variables
None.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:deleteFFDictionary
WmFlatFile. Deletes a at le dictionary.
Before deleting the dictionary, the Integration Server determines if other dictionaries
depend on the dictionary being deleted, and gives the user the option of canceling the
deletion.
Input Variables
FFDictionaryName String The fully qualied name of the at le dictionary that you
want to delete.
Output Variables
deleted
Description
true
336
Odd Header
Flat File Folder
false
Usage Note
Before you run this service, you should run the pub.flatFile.generate:findDependants service
to return the names of all at le schemas and dictionaries that are dependent on the
dictionary you are deleting.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:deleteFFDictionaryEntry
WmFlatFile. Deletes a single entry from a at le dictionary.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that
contains the entry that you want to delete.
EntryName
EntryType
String The type of entry that you are deleting. Specify Record,
Composite, or Field.
Output Variables
deleted
Description
true
false
337
Even Header
Flat File Folder
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:deleteFFSchema
WmFlatFile. Deletes a at le schema.
Input Variables
FFSchemaName
Output Variables
deleted
Description
true
false
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:FFDictionary
WmFlatFile. This IS document type denes the format to use when supplying a
at le dictionary or dictionary entry (in the FFXML variable) and the format that
338
Odd Header
Flat File Folder
services return (in the FFXML variable) when you are retrieving a at le dictionary or
dictionary entry.
The structure for this IS document type is dened in the following XML schema:
Integration Server_directory\instances\instance_name \packages\WmFlatFile\pub
\FFGeneration.xsd
Variables
FFDictionary
Composite
DictionaryEntry
Description
EntryName
RecordDenition
Description
EntryName
339
Even Header
Flat File Folder
Description
EntryName
FieldDenition
Usage Notes
If you are using this IS document type to supply a at le dictionary as input
to the pub.flatFile.generate:saveXMLAsFFDictionary, be sure to supply all dictionary
entries. If you are using this IS document type to update an existing dictionary,
provide only the entries that you want to add or update and invoke the
pub.flatFile.generate:updateFFDictionaryEntryFromXML to update the at le dictionary.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
340
Odd Header
Flat File Folder
pub.flatFile.generate:FFSchema
WmFlatFile. This IS document type denes the format to use when supplying a at le
schema (in the FFXML variable) and the format that services return (in the FFXML
variable) when you are retrieving a at le schema.
The structure for this IS document type is dened in the following XML schema:
Integration Server_directory\instances\instance_name \packages\WmFlatFile\pub
\FFGeneration.xsd
Variables
FFSchema
Description
Delimiters
Document
Structure
Description
Ordered
RecordStructure
Description
341
Even Header
Flat File Folder
Ordered
String Whether
the child
records appear
in the at le
in the order
they are dened
in the at le
schema.
RecordUsage
Document
Information
about how the
record is used,
including either
the dictionary
reference for
this record or
the denition of
the record.
RecordStructure
Document List
Child records of
this record. This
is a recursive
reference to the
RecordStructure
dened in
FFSchema/
DocumentStructure .
RecordParser
DefaultRecord
Reference
342
Odd Header
Flat File Folder
Record
Identier
UndenedData
Allowed
Document
Areas
FloatingRecord
Description
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
343
Even Header
Flat File Folder
pub.flatFile.generate:findDependants
WmFlatFile. Returns the names of all at le schemas and dictionaries that are
dependent on a given at le dictionary.
Input Variables
DictionaryName String The name of the at le dictionary whose dependents you
want to nd.
Output Variables
dependants
Document List The dependent objects and the packages that contain
them.
Variable
Description
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:findReferences
WmFlatFile. Returns the names of all at le dictionaries that are referenced by a given
at le dictionary or at le schema.
Input Variables
name
344
Odd Header
Flat File Folder
Output Variables
references
Document List The referenced objects and the packages that contain
them.
Variable
Description
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:getFFDictionaryAsXML
WmFlatFile. Returns a dictionary as an XML string.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that you
want returned as XML.
Output Variables
FFXML
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
345
Even Header
Flat File Folder
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:getFFDictionaryEntryAsXML
WmFlatFile. Returns a single dictionary entry as an XML string.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that
contains the entry that you want returned as XML.
EntryName
String The name of the entry that you want to returned as XML.
EntryType
String The type of entry that you want returned. Specify Record,
Composite, or Field.
Output Variables
FFXML
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:getFFSchemaAsXML
WmFlatFile. Returns the specied at le schema as an XML string.
Input Variables
FFSchemaName
346
Odd Header
Flat File Folder
Output Variables
FFXML
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:listFFDictionaryEntries
WmFlatFile. Lists all entries in a specied at le dictionary that are of a specied type.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that
contains the entries that you want listed.
EntryType
String The type of entries that you want listed. Specify Record,
Composite, or Field.
Output Variables
EntryName
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
347
Even Header
Flat File Folder
pub.flatFile.generate:saveXMLAsFFDictionary
WmFlatFile. Creates a at le dictionary in the Integration Server namespace by
converting the specied at le dictionary that is in XML format into a namespace at
le dictionary.
If a at le dictionary with the same name already exists in the Integration Server
namespace, use the pub.flatFile.generate:deleteFFDictionary service to delete the at le
dictionary before invoking this service. This service throws an exception is if a at le
dictionary with the same name already exists when it is invoked.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that you
want to create in the Integration Server namespace.
PackageName
FFXML
maxNumOfErrors String Optional. The maximum number of errors that you want
returned. The default is 100.
The service ensures the at le dictionary is valid before saving it
in the Integration Server namespace. The validation occurs in two
stages.
1. Structural validation of the XML.
2. Logical validation of the XML contents.
If structural validation errors occur, the service reports the
structural validation errors, but does not proceed with logical
validation. When the XML string contains no structural validation
errors, the service proceeds with logical validation and reports
any logical validation errors.
348
Odd Header
Flat File Folder
Output Variables
saved
Description
true
false
Errors
Warnings
Usage Note
Use this service to add a new at le dictionary. Use the
pub.flatFile.generate:updateFFDictionaryEntryFromXML if you want to update one or more entries
in a at le dictionary rather than creating a new at le dictionary.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:saveXMLAsFFSchema
WmFlatFile. Creates a at le schema in the Integration Server namespace by converting
the specied at le schema that is in XML format into a namespace at le schema.
If a at le schema with the same name already exists in the Integration Server
namespace, use the pub.flatFile.generate:deleteFFSchema service to delete the at le schema
before invoking this service. This service throws an exception is if a at le schema with
the same name already exists when it is invoked.
349
Even Header
Flat File Folder
Input Variables
FFSchemaName
PackageName
FFXML
maxNumOfErrors String Optional. The maximum number of errors that you want
returned. The default is 100.
The service ensures the at le schema is valid before saving it in
the Integration Server namespace. The validation occurs in two
stages.
1. Structural validation of the XML.
2. Logical validation of the XML contents.
If structural validation errors occur, the service reports the
structural validation errors, but does not proceed with logical
validation. When the XML string contains no structural validation
errors, the service proceeds with logical validation and reports
any logical validation errors.
Output Variables
saved
Description
true
false
350
Odd Header
Flat File Folder
Errors
Warnings
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
pub.flatFile.generate:updateFFDictionaryEntryFromXML
WmFlatFile. Updates one or more entries in a at le dictionary in the Integration Server
namespace.
This service goes through all entries that you specify in the FFXML variable. If an
entry with the same name and type already exists in the at le dictionary, this service
overwrites the existing entry. If the entry does not already exist, this service creates the
entry in the specied at le dictionary.
Input Variables
FFDictionaryName String The fullyqualied name of the at le dictionary that
contains the entries that you are replacing, adding, or both.
FFXML
String The dictionary entries (as an XML string) that you want to
use to replace an existing entry or that you want to add to the at
le dictionary. The XML string in FFXML must conform to the
pub.flatFile.generate:FFDictionary IS document type.
Note: To see examples of how to supply the XML string in FFXML
by mapping data from another le, see the samples provided in
the WmFlatFileSamples package. For sample code that shows how
to retrieve the data for FFXML from an XML le in the local le
system, see Flat File Schema Developers Guide.
maxNumOfErrors String Optional. The maximum number of errors that you want
returned. The default is 100.
The service ensures the at le schema is valid before saving them
in the at le dictionary. The validation occurs in two stages.
351
Even Header
Flat File Folder
Description
true
false
Errors
Warnings
String List Optional. Warnings about the dictionary entry that was
updated or added.
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support website at
hps://empower.softwareag.com.
sample.flatFile.generateFFSchema:delimited
sample.flatFile.generateFFSchema:fixedLength
352
Odd Header
Flow Folder
10 Flow Folder
Summary of Elements in this Folder .........................................................................................
354
353
Even Header
Flow Folder
You use the elements in the ow folder to perform debugging and utility-type tasks in a
ow service.
pub.flow:clearPipeline
pub.flow:debugLog
pub.flow:getLastError
pub.flow:getRetryCount
pub.flow:getSession
pub.flow:getTransportInfo
pub.flow:invokeService
pub.flow:restorePipeline
pub.flow:restorePipelineFromFile
pub.flow:savePipeline
354
Odd Header
Flow Folder
Element
pub.flow:savePipelineToFile
pub.flow:setCustomContextID
pub.flow:setResponse
pub.flow:setResponse2
pub.flow:setResponseCode
pub.flow:setResponseHeader
pub.flow:setResponseHeaders
pub.flow:throwExceptionForRetry
pub.flow:tracePipeline
pub.flow:transportInfo
355
Even Header
Flow Folder
pub.flow:clearPipeline
WmPublic. Removes all elds from the pipeline. You may optionally specify elds that
should not be cleared by this service.
Input Parameters
preserve
String List Optional. Field names that should not be cleared from the
pipeline.
Output Parameters
None.
pub.flow:debugLog
WmPublic. Writes a message to the server log.
Each log message contains a timestamp, a message ID, the function name eld, and
message eld. The following is an example:
Input Parameters
message
function
level
356
Odd Header
Flow Folder
Specify...
Off
No messages.
Fatal
Error
Warn
Info
Debug
Trace
Output Parameters
None.
Usage Notes
You can control the logging level for ow messages independent of log messages for
other facilities. On the Settings > Logging > Edit screen in Integration Server Administrator,
navigate to facility 0090 pub Flow Services and specify the level of messages that you want
Integration Serverto display for services in the pub.flow folder.
Prior to Integration Server 7.1, Integration Server used a number-based system to set
the level of debug information wrien to the server log. Integration Server maintains
backward compatibility with this system.
pub.flow:getLastError
WmPublic. Obtains detailed information about the last exception that was trapped
within a ow.
An exception is trapped in a ow when a service failure occurs inside a SEQUENCE step
that executes until DONE, or when a service failure occurs inside a REPEAT step that
repeats on FAILURE.
Input Parameters
None.
357
Even Header
Flow Folder
Output Parameters
lastError
Document Information about the last error, translated into the language
used by the Integration Server. The structure of this document is
dened by pub.event:exceptionInfo.
Usage Notes
If this service is not invoked from within a ow service, an exception is thrown.
Each execution of a service (whether the service succeeds or fails) updates the value
returned by getLastError. Consequently, getLastError itself resets the value of lastError .
Therefore, if the results of getLastError will be used as input to subsequent services, map
the value of lastError to a variable in the pipeline.
If a map has multiple transformers, then a subsequent call to getLastError will return the
error associated with the last failed transformer in the map, even if it is followed by
successful transformers.
pub.flow:getRetryCount
WmPublic. Retrieves the retry count and the maximum retry count for a service.
The retry count indicates the number of times the Integration Server has re-executed
a service. For example, a retry count of 1 indicates that the Integration Server tried to
execute the service twice (the initial aempt and then one retry). The maximum retry
count indicates the maximum number of times theIntegration Server can re-execute the
service if it continues to fail because of an ISRuntimeException.
Input Parameters
None.
Output Parameters
retryCount
maxRetryCount
Usage Notes
Although the pub.flow:getRetryCount service can be invoked at any point in a ow service,
the pub.flow:getRetryCount service retrieves retry information for the service within
358
Odd Header
Flow Folder
which it is invoked. That is, you can use the pub.flow:getRetryCount service to retrieve
retry information for top-level services or services invoked by a trigger only. The
pub.flow:getRetryCount service does not retrieve retry information for a nested service (a
service that is invoked by another service).
The Integration Server retries a service that is congured to retry if the service uses
the pub.flow:throwISRuntimeException service to catch a transient error and re-throw it as an
ISRuntimeException. The Integration Server will also retry a service wrien in Java if
the service throws an exception using com.wm.app.b2b.server.ISRuntimeException().
For more information about constructing com.wm.app.b2b.server.ISRuntimeExceptions
in Java services, see the webMethods Integration Server Java API Referencefor the
com.wm.app.b2b.server.ISRuntimeException class.
The maximum number of times the Integration Server retries a service depends on the
value of the Max attempts property for the service. If the service is invoked by a trigger,
the retry behavior is determined by the trigger retry properties.
See Also
pub.flow:throwExceptionForRetry
pub.flow:getSession
WmPublic. Inserts the Session object into the pipeline as a document named $session .
Session is useful for associating values with particular clients or users. Once $session
is added to the pipeline, it can be used like any other document in a ow. This permits
more powerful ows that perform work spanning several user requests.
Input Parameters
None.
Output Parameters
$session
pub.flow:getTransportInfo
WmPublic. Retrieves information about the protocol from which the current service was
invoked.
Input Parameters
None.
359
Even Header
Flow Folder
Output Parameters
transport
Document Information about the protocol that invoked the service. The
structure of this document is dened by pub.flow:transportInfo.
Usage Notes
The value of the protocol key in transport indicates which protocol was used to invoked
the service. For example, if the service was invoked via the e-mail protocol, protocol
would be set to email. transport will also contain a document (whose key is protocoldependent) that holds protocol-specic details.
To use this service, rst check the value of the protocol parameter to determine
which protocol had been used. Then, depending on the value of protocol , extract the
appropriate protocol information from transport . See pub.flow:transportInfo for the structure
of the document that holds the protocol details.
pub.flow:invokeService
WmPublic. Dynamically invokes any Integration Server public service and optionally
returns the output from the invoked service in the pipeline for pub.flow:invokeService.
Input Parameters
ifcname
svcname
pipeline
Output Parameters
If you specify a value for pipeline , the pub.flow:invokeService service returns the output
parameters dened for the service specied by ifcname and svcname . For example,
pub.flow:invokeService invokes pub.math:addInts as follows:
ifcname = "pub.math"
svcname = "addInts"
pipeline = "mypipeline"
mypipeline.num1 = "100"
mypipeline.num2 = "200"
360
Odd Header
Flow Folder
If you do not specify a value for pipeline , the invoked service returns the output,
notpub.flow:invokeService. For example, if you use pub.flow:invokeService to invoke
pub.math.addInts, the output is returned in the pipeline for pub.math.addInts.
Usage Notes
If the parameters specied by the service invoked by pub.flow:invokeService are not present
or not properly specied, Integration Server issues an exception appropriate for the
invoked service.
Integration Server issues a ServiceException for pub.flow:invokeService if either of the
following is not present in the ow service:
The interface specied by ifcname
The service specied by svcname
pub.flow:restorePipeline
WmPublic. Restores a pipeline previously saved by pub.flow:savePipeline.
Input Parameters
$name
$merge
String Optional. Flag that indicates whether or not to merge the values in
the existing pipeline with the values in the saved pipeline. Set to:
false to clear the existing pipeline before restoring the saved pipeline.
true to merge the existing pipeline with the saved pipeline. If a eld
exists in the saved pipeline and the existing pipeline, the saved eld
takes precedence.
$remove
String Optional. Flag that indicates whether or not the saved pipeline
will remain in memory after this service is executed. Set to:
false to retain the saved pipeline in memory so that future calls to
restorePipeline with the same $name will still return the saved pipeline.
This is the default.
361
Even Header
Flow Folder
true to remove the saved pipeline from memory after the service
executes.
Output Parameters
The output is dynamic, based on the contents of the saved and existing pipelines.
Usage Notes
After a successful invocation of restorePipeline, the pipeline will contain all elds that were
present immediately before pub.flow:savePipeline was invoked. restorePipeline clears existing
pipeline values unless the optional $merge eld is specied.
When using MTOM streaming for SOAP aachments, messageContext variables and/or
XOPObject elds will not be available in the saved pipeline. A messageContext variable
is used by many pub.soap services to hold the SOAP message on which the service acts.
XOPObject elds are Objects that use the com.wm.util.XOPObject Java wrapper type.
For more information about MTOM Streaming, see the Web Services Developers Guide.
This service is helpful in the interactive development or debugging of an application.
See Also
pub.flow:savePipeline
pub.flow:restorePipelineFromFile
pub.flow:restorePipelineFromFile
WmPublic. Restores a pipeline that was previously saved to a le.
Input Parameters
leName
merge
String Optional. Flag that determines whether or not to merge the saved
values into the existing pipeline. Set to:
false to replace the existing pipeline with the saved values. This is the
default.
Output Parameters
The output is dynamic, based on the contents of the saved and existing pipelines.
362
Odd Header
Flow Folder
Usage Notes
This service is helpful in the interactive development or debugging of an application.
In some cases, however, using the Pipeline debug property for the debugging of an
application is more ecient. For more information about the Pipeline debug property,
see webMethods Service Development Help.
Be aware that variables that exist in the saved pipeline but are not dened in the ow
will not appear on the Pipeline tab and, therefore, will not be available for explicit
mapping.
When using MTOM streaming for SOAP aachments, messageContext variables and/or
XOPObject elds will not be available in the saved pipeline. A messageContext variable
is used by many pub.soap services to hold the SOAP message on which the service acts.
XOPObject elds are Objects that use the com.wm.util.XOPObject Java wrapper type.
For more information about MTOM Streaming, see the Web Services Developers Guide.
See Also
pub.flow:savePipelineToFile
pub.flow:restorePipeline
pub.flow:savePipeline
WmPublic. Saves a pipeline into memory, for later retrieval with pub.flow:restorePipeline.
Input Parameters
$name
String Name that will identify the pipeline in memory. An exception will
be thrown if this value is not specied.
Output Parameters
None.
Usage Notes
After a successful invocation of savePipeline, a snapshot of pipeline elds will be saved in
memory under the key provided by $name . Note that because the pipeline is saved to
memory, it will not be available after a server restart.
When using MTOM streaming for SOAP aachments, messageContext variables and/or
XOPObject elds will not be available in the saved pipeline. A messageContext variable
is used by many pub.soap services to hold the SOAP message on which the service acts.
XOPObject elds are Objects that use the com.wm.util.XOPObject Java wrapper type.
For more information about MTOM Streaming, see the Web Services Developers Guide.
This service is helpful in the interactive development or debugging of an application.
363
Even Header
Flow Folder
See Also
pub.flow:restorePipeline
pub.flow:savePipelineToFile
pub.flow:savePipelineToFile
WmPublic. Saves the current pipeline to a le on the machine running webMethods
Integration Server.
Input Parameters
leName
Output Parameters
None.
Usage Notes
When using MTOM streaming for SOAP aachments, messageContext variables and/or
XOPObject elds will not be available in the saved pipeline. A messageContext variable
is used by many pub.soap services to hold the SOAP message on which the service acts.
XOPObject elds are Objects that use the com.wm.util.XOPObject Java wrapper type.
For more information about MTOM Streaming, see the Web Services Developers Guide.
This service is helpful in the interactive development or debugging of an application.
In some cases, however, using the Pipeline debug property for the debugging of an
application is more ecient. For more information about the Pipeline debug property,
see webMethods Service Development Help.
The following table shows the data types and classes that this service can write to the
output le if they are included in the pipeline:
For...
Java data
types
pub.flow:savePipelineToFile supports...
byte[]
Date
GregorianCalendar
IData
IData[] (IData list)
String
364
Odd Header
Flow Folder
For...
pub.flow:savePipelineToFile supports...
String[] (String list)
String[][] (String table)
Vector
Java wrapper
classes
Boolean
Byte
Character
Double
Float
Integer
Long
Short
Single dimension arrays of any of the above
webMethods
classes
MBoolean
MByte
MDouble
MFloat
MInteger
MLong
MShort
Single dimension arrays of any of the above
Object arrays
See Also
pub.flow:restorePipelineFromFile
pub.flow:savePipeline
pub.flow:setCustomContextID
WmPublic. Associates a custom value with an auditing context. This custom value can
be used to search for service audit records in the webMethods Monitor.
365
Even Header
Flow Folder
Input Parameters
String Optional. The custom value for the current auditing context.
Specify a value that you want to associate with the auditing
context.
id
Output Parameters
None.
Usage Notes
Each client request creates a new auditing context. The auditing context is the
lifetime of the top-level service. Once the custom context identier is set, Integration
Server includes that value in each service audit record it logs in the current context.
Calls to this service aect audit logging only for the current request.
This service is useful when Integration Server is congured to log to a database.
When the server logs information about a service to the database, it includes the
custom context identier in the service log. Using the webMethods Monitor, you can
use the custom value as search criteria to locate and view all corresponding service
audit records.
If Integration Server is congured to log to a le system, the server writes the custom
context identier with the service audit records to a le. This le is not accessible
with the webMethods Monitor. You cannot use the webMethods Monitor to query
service records when logging to a le.
If this service is invoked without a specied value for id , Integration Server writes
a null value for the custom context identier eld for all subsequent service audit
records that it logs in the current context.
pub.flow:setResponse
WmPublic. Deprecated - Replaced by pub.flow:setResponse2.
Forces a specied response to be returned by the webMethods Integration Server to a
calling process (such as a browser or application server).
Formaing of the response is normally handled by templates, which format values from
the pipeline. If templates are not appropriate for a particular integration scenario, a
response message can be created within the ow and then returned to the caller using
this service.
366
Odd Header
Flow Folder
Input Parameters
responseString
responseBytes
string
bytes
response
contentType
encoding
Output Parameters
None.
Usage Notes
Specify responseString or responseBytes , but not both. If you specify both, the
pub.flow:setReponse service uses responseString and ignores responseBytes .
If neither responseString or responseBytes are specied, Integration Server uses the value
of the server conguration parameter wa.server.setReponse.pre82Mode to determine
the order in which to look for and use the deprecated elds.
When wa.server.setResponse.pre82Mode is set to true, Integration Server follows
a precedence order similar to what was available in Integration Server 7.1x and 8.0x.
Specically, Integration Server looks for the deprecated parameters in the following
order and uses the value of the rst parameter that it nds: response , string , bytes
When wa.server.setResponse.pre82Mode is set to false, Integration Server follows
a precedence order similar to what was available in Integration Server 8.2 and later.
367
Even Header
Flow Folder
Specically, Integration Server looks for the deprecated parameters in the following
order and uses the value of the rst parameter that it nds: string , bytes , response
One possible usage of this service is to create an XML response to an XML request.
A ow that creates an XML document by calling pub.xml:documentToXMLString can use
pub.flow:setResponse to return the XML document to the caller. In your ow, you would
map xmldata (output of pub.xml:documentToXMLString) to responseString and set contentType
to text/xml (inputs to pub.flow:setResponse). Calling pub.flow:setResponse will cause the server
to return the XML document that you've mapped to responseString instead of processing
the pipeline through a template.
Your client might be expecting binary data in the response, such as a JPEG image. In this
case, map a byte array that represents the image to responseBytes and set contentType to
image/jpeg.
Integration Server detects the type of request and sets the Content-Type value to text/
XML (for requests in XML format) or text/HTML (for requests in all other formats). Be
aware that if you specify a value for contentType , Designer will not able to decode or
display output from ows that include this service. This is because your contentType
seing will override the Content-Type value that the Integration Server uses to return
output to Designer. If you use Run to test the ow, Designer will not display any results.
Keep in mind that when returning the processed XML document to the client that
originally submied it, you may need to modify the encoding. Java String objects
are always stored using a Unicode encoding. If your original XML document used
an encoding other than UTF-8 or UTF-16, it will still contain an encoding tag that
indicates what this encoding was. However, if you did not modify the encoding during
document processing, you need to set the encoding parameter when you invoke the
pub.flow:setResponse service. Specically, do one of the following:
Set the encoding parameter to match the tag in the le, or
Set the encoding parameter to "autoDetect" to use the encoding specied in the XML
string encoding tag.
pub.flow:setResponse2
WmPublic. Forces a specied response to be returned by the webMethods Integration
Server to a calling process (such as a browser or application server).
Formaing of the response is normally handled by templates, which format values from
the pipeline. If templates are not appropriate for a particular integration scenario, a
response message can be created within the ow and then returned to the caller using
this service.
Input Parameters
responseString
368
Odd Header
Flow Folder
responseBytes
responseStream
contentType
encoding
Output Parameters
None.
Usage Notes
This service replaces pub.flow:setResponse, which is deprecated.
Specify responseString , responseBytes , or responseStream . If you specify more than one,
the pub.flow:setReponse2 service looks for the parameters in the following order and uses
the rst one that it nds: responseString , responseBytes ,responseStream .
One possible usage of this service is to create an XML response to an XML request.
A ow that creates an XML document by calling pub.xml:documentToXMLString can use
pub.flow:setResponse2 to return the XML document to the caller. In your ow, you would
map xmldata (output of pub.xml:documentToXMLString) to responseString and set contentType
to text/xml (inputs to pub.flow:setResponse2). Calling pub.flow:setResponse2 will cause the
server to return the XML document that you've mapped to responseString instead of
processing the pipeline through a template.
Your client might be expecting binary data in the response, such as a JPEG image. In this
case, map a byte array that represents the image to responseBytes and set contentType to
image/jpeg.
Integration Server detects the type of request and sets the Content-Type value to text/
XML (for requests in XML format) or text/HTML (for requests in all other formats). Be
aware that if you specify a value for contentType , Designer will not able to decode or
display output from ows that include this service. This is because your contentType
seing will override the Content-Type value that the Integration Server uses to return
output to Designer. If you use Run to test the ow, Designer will not display any results.
Keep in mind that when returning the processed XML document to the client that
originally submied it, you may need to modify the encoding. Java String objects
are always stored using a Unicode encoding. If your original XML document used
369
Even Header
Flow Folder
an encoding other than UTF-8 or UTF-16, it will still contain an encoding tag that
indicates what this encoding was. However, if you did not modify the encoding during
document processing, you need to set the encoding parameter when you invoke the
pub.flow:setResponse2 service. Specically, do one of the following:
Set the encoding parameter to match the tag in the le, or
Set the encoding parameter to "autoDetect" to use the encoding specied in the XML
string encoding tag.
pub.flow:setResponseCode
WmPublic. Species the HTTP response code to be returned by Integration Server to a
calling process (such as a browser or application server).
Input Parameters
String HTTP status code to be returned to the caller.
responseCode
The response codes and phrases are dened in RFC 2616, Section
10. If you provide a value for responseCode that is not listed in RFC
2616, Section 10, you must also provide a value for reasonPhrase .
String Optional. HTTP reason phrase to be returned to the caller. If
no reason is provided, the default reason phrase associated with
responseCode will be used. You must provide a reasonPhrase for any
responseCode that is not listed in RFC 2616, Section 10
reasonPhrase
Output Parameters
None.
pub.flow:setResponseHeader
WmPublic. Sets a header eld in the HTTP response to a calling process (such as a
browser or application server) or in the JMS message that contains the SOAP response
from a web service invocation.
Input Parameters
eldName
eldValue
370
Odd Header
Flow Folder
Output Parameters
None.
Usage Notes
pub.flow:setResponseHeader sets a single eld in the response header. To set multiple
response header elds, use pub.flow:setResponseHeaders.
You can use pub.flow:setResponse to set the Content-Type of the HTTP header eld.
Content-Type species the format of the service response. For example, to specify
a JSON response, set Content-Type to application/json. For more information
about content types Integration Server supports, see webMethods Integration Server
Administrators Guide.
The following HTTP header elds cannot be set by calling this service or by Integration
Server applications:
Allow
Connection
Content-Length
WWW-Authenticate
Transfer-Encoding
Upgrade
Note: Content-Length can be set with the pub.flow:setResponse service.
Keep the following points in mind when adding headers for a JMS message that
contains a SOAP response:
You can specify custom headers.
You can set some JMS message header elds directly and set others using run-time
properties specic to Integration Server.
You can set JMSType directly. This header name is case-sensitive.
You can set the following headers indirectly using run-time properties:
JMSDeliveryMode, JMSExpiration, and JMSPriority. The following table
identies these properties and indicates the JMS message header elds aected
by each property.
Property Name
Description
jms.deliveryMode
Species the message delivery mode for the
371
Even Header
Flow Folder
Property Name
Description
Value
Description
PERSISTENT
persistent.
jms.priority
372
Odd Header
Flow Folder
pub.flow:setResponseHeaders
WmPublic. Sets one or more header elds in the HTTP response to a calling process
(such as a browser or application server) or in the JMS message that contains the SOAP
response from a web service invocation.
Input Parameters
headers
Document List Contains the header elds to set. Specify the following for
each header that you want to set.
eldName
eldValue
Output Parameters
None.
373
Even Header
Flow Folder
Usage Notes
pub.flow:setResponseHeaders sets one or more elds in the response header. If any of the
elds specied by eldName have already been set, they will be overwrien.
See the Usage Notes for pub.flow:setResponseHeader for more information.
pub.flow:throwExceptionForRetry
WmPublic. Throws an ISRuntimeException and instructs the Integration Server to reexecute a service using the original service input.
Input Parameters
wrappedException
message
Output Parameters
None.
Usage Notes
Use the pub.flow:throwExceptionForRetry service to handle transient errors that might occur
during service execution. A transient error is an error that arises from a condition that
might be resolved quickly, such as the unavailability of a resource due to network
issues or failure to connect to a database. The service might execute successfully if
the Integration Server waits and then retries the service. If a transient error occurs,
the service can catch this error and invoke pub.flow:throwExceptionForRetry to instruct the
Integration Server to retry the service.
The pub.flow:throwExceptionForRetry service should be used for transient errors only.
Only top-level services or trigger services can be retried. That is, a service can be retried
only when it is invoked directly by a client request or by a trigger. The service cannot be
retried when it is invoked by another service (that is, when it is a nested service).
You can invoke the pub.flow:getRetryCount service to retrieve the current retry count and the
maximum specied retry aempts for a service.
374
Odd Header
Flow Folder
If the trigger service is wrien in Java, the service can use ISRuntimeException() to
throw an exception and retry the service. For more information about constructing
ISRuntimeExceptions in Java services, see the webMethods Integration Server Java API
Reference for the com.wm.app.b2b.server.ISRuntimeException class.
For information about conguring retry for services or triggers, see webMethods Service
Development Help.
See Also
pub.flow:getRetryCount
pub.flow:tracePipeline
WmPublic. Writes the names and values of all elds in the pipeline to the server log.
Input Parameters
level
Output Parameters
None.
Usage Notes
Prior to Integration Server 7.1, Integration Server used a number-based system to set
the level of debug information wrien to the server log. Integration Server maintains
backward compatibility with this system. For more information about logging levels,
see the description of the watt.debug.level parameter in webMethods Integration Server
Administrators Guide.
pub.flow:transportInfo
WmPublic. Document type used to return information about the protocol through which
a service was invoked.
Parameters
protocol
375
Even Header
Flow Folder
subprotocol
A value of...
Indicates that...
filePolling
ftp
http
jms
String Conditional. Subprotocol for HTTP. For JMS, whether or not the
destinationName value is the actual destination or a lookup.
A value of...
Indicates that...
HTTP
HTTPS
jndi
native
376
Odd Header
Flow Folder
Description
to
from
cc
bcc
replyto
subject
lename
contenype
content
recvdate
377
Even Header
Flow Folder
sentdate
hp
Description
requestUrl
query
method
requestHdrs
ipInfo
Description
clientIp
clientPort
localIp
378
Odd Header
Flow Folder
ftp
localPort
remoteIp
remotePort
Description
lename
mimetype
ipInfo
Description
localIp
localPort
379
Even Header
Flow Folder
lePolling
jms
remoteIp
remotePort
Description
lename
originalFilename
contenype
length
lastModied
Description
connectionAliasName
triggerName
380
Odd Header
Flow Folder
destinationName
destinationType
requestHdrs
Usage Notes
A document with this structure is output by the pub.flow:getTransportInfo service.
381
Even Header
382
Odd Header
Hashtable Folder
11 Hashtable Folder
Summary of Elements in this Folder .........................................................................................
384
383
Even Header
Hashtable Folder
This folder contains services that you can use to create, update, and obtain information
about the hashtable.
pub.hashtable:containsKey
pub.hashtable:createHashtable
pub.hashtable:get
pub.hashtable:listKeys
pub.hashtable:put
pub.hashtable:remove
pub.hashtable:size
pub.hashtable:containsKey
WmPublic. Checks for the existence of a hashtable element.
Input Parameters
hashtable
key
384
Odd Header
Hashtable Folder
Output Parameters
containsKey
pub.hashtable:createHashtable
WmPublic. Creates a hashtable object.
Input Parameters
None.
Output Parameters
hashtable
pub.hashtable:get
WmPublic. Gets the value for a specied key in the hashtable.
Input Parameters
hashtable
key
Output Parameters
value
pub.hashtable:listKeys
WmPublic. Lists all the keys stored in the hashtable.
385
Even Header
Hashtable Folder
Input Parameters
hashtable
Output Parameters
keys
pub.hashtable:put
WmPublic. Adds a key/value pair in the hashtable.
Input Parameters
hashtable
key
value
Output Parameters
hashtable
pub.hashtable:remove
WmPublic. Removes a key/value pair from the hashtable.
Input Parameters
hashtable
key
value
386
Odd Header
Hashtable Folder
Output Parameters
hashtable
value
Object Value of the hashtable element that was removed. Returns null
if the input key is not found in the hashtable.
pub.hashtable:size
WmPublic. Gets the number of elements in the hashtable.
Input Parameters
hashtable
Output Parameters
size
387
Even Header
388
Odd Header
IO Folder
12 IO Folder
Summary of Elements in this Folder .........................................................................................
390
389
Even Header
IO Folder
You use the elements in the io folder to convert data between byte[ ] , characters, and
InputStream representations. The io folder contains services for reading and writing
bytes, characters, and streamed data to the le system.
These services behave like the corresponding methods in the java.io.InputStream class.
For more information about InputStreams, see the Java documentation.
pub.io:bytesToStream
pub.io:close
pub.io:createByteArray
pub.io:mark
pub.io:markSupported
pub.io:read
pub.io:readAsString
pub.io:readerToString
390
Odd Header
IO Folder
Element
pub.io:reset
pub.io:skip
pub.io:streamToBytes
pub.io:streamToReader
pub.io:streamToString
pub.io:stringToReader
pub.io:stringToStream
pub.io:bytesToStream
WmPublic. Converts a byte[ ] to java.io.ByteArrayInputStream.
Input Parameters
bytes
length
oset
String Optional. The oset into the input byte array from which
to start converting. If no value specied, the default value is
zero.
391
Even Header
IO Folder
Output Parameters
stream
Usage Notes
This service constructs stream from the byte array using the constructor
ByteArrayInputStream(byte[ ]). This constructor does not make a copy of the byte array,
so any changes to bytes will be reected in the data read from the stream.
pub.io:close
WmPublic. Closes an InputStream or a reader object and releases the resources.
Input Parameters
inputStream
reader
Output Parameters
None.
Usage Notes
If the InputStream is already closed, invoking this service has no eect. However,
leaving an InputStream open may cause errors that are not recoverable until Integration
Server is shut down. Use the pub.io:close service to explicitly close the input stream when
a service leaves it open. For example, pub.file:getFile and pub.client.ftp:get leave the input
stream open in the pipeline.
pub.io:createByteArray
WmPublic. Creates a byte array of the specied length.
392
Odd Header
IO Folder
Input Parameters
length
Output Parameters
bytes
Usage Notes
The pub.io:read service reads data from an InputStream into a byte array. You can use this
service to create the byte array. Invoking this service is the equivalent of the Java code
new byte[length].
pub.io:mark
WmPublic. Marks the current position in the InputStream or reader object.
A subsequent call to pub.io:reset repositions this stream at the last marked position.
Marking and respositioning the input stream allows subsequent service calls to re-read
the same bytes.
Input Parameters
stream
reader
limit
Output Parameters
stream
393
Even Header
IO Folder
reader
Usage Notes
If the InputStream does not support the mark operation, invoking this service has no
eect.
Either of the optional input parameters, stream or reader , is required.
pub.io:markSupported
WmPublic. Enables you to test whether your InputStream or reader object supports the
mark and reset operations.
Input Parameters
stream
reader
Output Parameters
stream
supported
reset operations.
Usage Notes
Either of the input parameters, stream or reader , is required.
394
Odd Header
IO Folder
pub.io:read
WmPublic. Reads a specied number of bytes from the InputStream and stores them
into a buer.
Input Parameters
stream
oset
String Optional The oset into the byte array in the buer to
which the data is wrien. If no value is supplied, this defaults
to 0.
length
buer
Output Parameters
stream
buer
bytesRead
pub.io:readAsString
WmPublic. Reads the data from a reader object and returns the contents as a string.
395
Even Header
IO Folder
Input Parameters
reader
length
Output Parameters
reader
lengthRead
value
String The data read from the reader object, or null if end of
stream has been reached.
Usage Notes
The readAsString service does not automatically close the reader object. To close the reader,
use the pub.io:close service.
pub.io:readerToString
WmPublic. Reads the data from a reader object and converts it to a string.
Input Parameters
reader
Output Parameters
string
Usage Notes
The readerToString service does not automatically close the reader object. To close the
reader, use the pub.io:close service.
396
Odd Header
IO Folder
pub.io:reset
WmPublic. Repositions the InputStream or the reader object to the position at the time
the pub.io:mark service was last invoked on the stream.
Input Parameters
stream
reader
Output Parameters
stream
reader
Usage Notes
If the InputStream does not support the reset operation, invoking this service has no
eect.
Either of the input parameters, stream or reader , is required.
pub.io:skip
WmPublic. Skips over and discards the specied number of bytes or characters from the
input stream or a reader object.
Input Parameters
stream
397
Even Header
IO Folder
reader
length
Output Parameters
stream
reader
bytesSkipped
charactersSkipped
Usage Notes
Thepub.io:skip service uses the uses the Java methodInputStream.skip, which might
skip some smaller number of bytes, possibly zero (0). This happens due to conditions
such as reaching the end of le before n bytes have been skipped. For more information
about the InputStream.skip method, see the Java documentation on the InputStream
class.
Either of the optional input parameters, stream or reader , is required.
If both stream and reader input parameters are specied and if an exception occurs
during the stream object usage, then the operations are not performed on the reader
object also.
pub.io:streamToBytes
WmPublic. Creates a byte[ ] from data that is read from an InputStream.
Input Parameters
stream
Output Parameters
bytes
398
Odd Header
IO Folder
Usage Notes
This service reads all of the bytes from stream until the end of le is reached, and then it
closes the InputStream.
pub.io:streamToReader
WmPublic. Converts a java.io.InputStream to a java.io.Reader object.
Input Parameters
inputStream
encoding
Output Parameters
reader
pub.io:streamToString
WmPublic. Creates a string from data that is read from an InputStream.
Input Parameters
inputStream
encoding
399
Even Header
IO Folder
Output Parameters
string
pub.io:stringToReader
WmPublic. Converts a string object to a java.io.StringReader object.
Input Parameters
string
Output Parameters
reader
pub.io:stringToStream
WmPublic. Converts a string to a byte stream.
Input Parameters
string
encoding
Output Parameters
inputStream
400
Odd Header
JDBC Folder
13 JDBC Folder
Summary of Elements in this Folder .........................................................................................
402
401
Even Header
JDBC Folder
You use the elements in the JDBC folder to obtain information about Integration Server
JDBC pools.
pub.jdbc:getPoolInfo
pub.jdbc:getPoolInfo
WmPublic. Returns run-time information about the JDBC pool associated with a
specied functional alias.
Input Parameters
functionalAlias
getConnectionWait
Output Parameters
minConnections
maxConnections
totalConnections
availableConnections
402
Odd Header
JDBC Folder
status
JDBC pool.
403
Even Header
404
Odd Header
JMS Folder
14 JMS Folder
Summary of Elements in This Folder ........................................................................................
406
405
Even Header
JMS Folder
You can use the services in the JMS folder to send and receive JMS messages.
pub.jms:acknowledge
pub.jms:batchTriggerSpec
pub.jms:createConsumer
pub.jms:documentResolverSpec
pub.jms:JMSMessage
pub.jms:receive
pub.jms:reply
pub.jms:send
pub.jms:sendAndWait
406
Odd Header
JMS Folder
Element
pub.jms:sendBatch
pub.jms:triggerSpec
pub.jms:waitForReply
pub.jms.wmjms:receiveStream
pub.jms.wmjms:sendStream
pub.jms:acknowledge
WmPublic. Sends an acknowledgment for a message to the JMS provider.
Input Parameters
message
Output Parameters
None.
Usage Notes
Use this service to acknowledge a message retrieved from the JMS provider if:
The message was received using the pub.jms:receive service, and
The message consumer used to retrieve the message has an acknowledgmentMode set
to CLIENT_ACKNOWLEDGE or DUPS_OK_ACKNOWLEDGE. For more information about
creating a message consumer, see pub.jms:createConsumer.
A message is not considered to be successfully consumed until it is acknowledged.
407
Even Header
JMS Folder
pub.jms:batchTriggerSpec
WmPublic. Specication for the signature of a JMS trigger that processes a batch of
messages at one time.
Input Parameters
JMSMessage
Output Parameters
None.
Usage Notes
Use this specication as the signature for JMS trigger services that will retrieve and
process a batch of messages.
If you want to use a JMS trigger to retrieve and process one message at a time, use
pub.jms:triggerSpec to declare the signature of the JMS trigger service.
See Also
pub.jms:triggerSpec
pub.jms:JMSMessage
pub.jms:createConsumer
WmPublic. Creates a message consumer to receive messages from destinations on the
JMS provider.
Input Parameters
connectionAliasName
String Name of the JMS connection alias that you want the
message consumer to receive messages.
408
Odd Header
JMS Folder
destinationType
409
Even Header
JMS Folder
durableSubscriberName
noLocal
published messages.
410
Odd Header
JMS Folder
Output Parameters
consumer
Usage Notes
A message consumer is a webMethods object that encapsulates the actual
javax.jms.MessageConsumer and javax.jms.Session.
Any message consumers created during the execution of a service will be closed
automatically when the top-level service completes. If the consumer closes without
acknowledging messages, messages are implicitly recovered back to the JMS provider.
The use of pub.jms:createConsumer in conjunction with pub.jms:receive is an alternative to
using JMS triggers. Use the pub.jms:createConsumer service to create a message consumer.
Use the pub.jms:receive to actively receive messages from a destination on the JMS
provider.
To create a durable subscriber, set the destinationType to TOPIC and specify a
durableSubscriberName. If you select TOPIC, but do not specify a durableSubscriberName ,
Integration Server creates a nondurable subscriber.
A durable subscription allows subscribers to receive all the messages published on a
topic, including those published while the subscriber is inactive.
If a durable subscription already exists for the specied durable subscriber on the JMS
provider, this service resumes the subscription.
A non-durable subscription allows subscribers to receive messages on their chosen
topic, only if the messages are published while the subscriber is active. A non-durable
subscription lasts the lifetime of its message consumer.
If the acknowledgment Mode eld is set to CLIENT_ACKNOWLEDGE, you must acknowledge
messages received by this consumer to the JMS provider using the pub.jms:acknowledge
service.
If the message consumer created by this service will be used to receive large message
streams from the webMethods Broker, make sure to specify an acknowledgmentMode
of AUTO_ACKNOWLEDGE or CLIENT_ACKNOWLEDGE. If the acknowledgmentMode is
DUPS_OK_ACKNOWLEDGE, the message consumer cannot be used to receive large message
streams.
See Also
pub.jms:acknowledge
pub.jms:receive
pub.jms:reply
pub.jms:send
pub.jms:sendAndWait
411
Even Header
JMS Folder
pub.jms:documentResolverSpec
WmPublic. Specication for the signature of a document resolver service that determines
whether a JMS message has a status of New, Duplicate, or In Doubt.
Input Parameters
uuid
triggerName
String The name of the JMS trigger that received the message
whose status needs to be resolved.
JMSMessage
Output Parameters
status
String Indicates the status of the message. The value of this eld
determines whether the Integration Server processes or rejects the
message. The status eld will have one of the following values:
NEW indicates that the message is new and has not been processed
412
Odd Header
JMS Folder
writes this message to the journal log when the message has a
status of DUPLICATE or IN_DOUBT.
Usage Notes
The pub.jms:documentResolverSpec must be used as the signature for a document resolver
service used to determine the processing status of a JMS message received by a JMS
trigger. For information about building a document resolver service and enabling
exactly once processing for a JMS message, see Using webMethods Integration Server to
Build a Client for JMS.
Use pub.publish:documentResolverSpec as the signature for a document resolver service used
to determine the status of document received a webMethods messaging trigger.
See Also
pub.jms:JMSMessage
pub.publish:documentResolverSpec
pub.jms:JMSMessage
WmPublic. Document type that represents the structure and content of a JMS message
received by a JMS trigger, received by the service pub.jms:receive, or as the output of
pub.jms:send or pub.jms:sendAndWait.
Parameters
header
Description
JMSCorrelationID
JMSDeliveryMode
413
Even Header
JMS Folder
JMSExpiration
JMSMessageID
JMSPriority
JMSRedelivered
414
Odd Header
JMS Folder
properties
body
JMSTimestamp
JMSType
Description
JMSXDeliveryCount
JMS_WMClusterNodes
activation
uuid
Description
string
415
Even Header
JMS Folder
bytes
object
data
message
Output Parameters
None.
See Also
pub.jms:receive
pub.jms:send
pub.jms:sendAndWait
pub.jms:receive
WmPublic. Receives a message from a queue or topic on the JMS provider.
416
Odd Header
JMS Folder
Input Parameters
consumer
timeout
Output Parameters
JMSMessage
Description
header
Description
JMSCorrelationID
JMSDeliveryMode
java.lang.Integer
Conditional.Delivery mode
specied at the time the message
was sent.
PERSISTENT indicates the JMS
417
Even Header
JMS Folder
JMSExpiration
java.lang.LongConditional. Time at
which this message expires. If the
message producer did not specify
a time-to-live, the JMSExpiration
value is zero, indicating the
message does not expire.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message priority. The
JMS standard denes priority
levels from 0 to 9, with 0 as the
lowest priority and 9 as the highest.
JMSRedelivered
java.lang.Boolean Conditional.
Flag indicating the JMS provider
delivered this message to the JMS
client previously.
True indicates the message may
JMSTimestamp
JMSType
418
Odd Header
JMS Folder
properties
Description
JMSXDelivery
Count
java.lang.Integer Conditional.
Species the number of times
the JMS provider delivered the
message. Most JMS providers set
this value.
JMS_WMCluster
Nodes
activation
uuid
419
Even Header
JMS Folder
Description
string
bytes
object
data
message
420
Odd Header
JMS Folder
pub.jms:reply
WmPublic. Sends a reply message to a requesting client.
Input Parameters
JMSReplyMessage
Description
421
Even Header
JMS Folder
header
Description
deliveryMode
properties
timeToLive
JMSType
Description
activation
422
Odd Header
JMS Folder
body
Description
string
bytes
object
data
message
consumer
423
Even Header
JMS Folder
Output Parameters
JMSReplyMessage
Description
header
JMSDelivery
Mode
424
Odd Header
JMS Folder
JMSExpiration
java.lang.LongConditional. Time
at which this message expires.
If the message producer did
not specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does
not expire.
Note: When sending a message,
this value is obtained from
the JMSReplyMessage/header/
timeToLive input parameter.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message priority.
The JMS standard denes
priority levels from 0 to 9, with
0 as the lowest priority and 9
as the highest.
Note: When sending a reply
message, this value is obtained
from the JMSMessage/header/
priority input parameter.
JMSReplyTo
425
Even Header
JMS Folder
properties
body
JMSTimestamp
JMSType
Description
activation
uuid
String Conditional. A
universally unique identier
for the message assigned by
the sender. Integration Server
can use the uuid for exactlyonce processing or for request/
reply.
Description
string
426
Odd Header
JMS Folder
bytes
object
data
Document Conditional.
Message body in the form of a
document (IData object).
Note: This message format can
only be used when sending
a JMS message from one
Integration Server to another.
When the JMS message is sent,
the sending Integration Server
encodes the IData into a byte
array. When the receiving
Integration Server receives the
message, it decodes the byte
array into IData.
message
Usage Notes
The pub.jms:reply service creates a JMS message (javax.jms.Message) based on input
provided to the service or takes an existing JMS message and sends it to the JMS
provider as a reply to a requesting client.
The JMSReplyTo eld in the request message is set by the sending client and indicates
the destination to which the reply will be sent.
The replying Integration Server automatically sets this value when it executes the
pub.jms:reply service.
When executing the pub.jms:reply service, Integration Server automatically sets the value
of the JMSCorrelationID eld in the JMSReplyMessage . Integration Server uses the value
of either the uuid or JMSMessageID elds in the requesting JMS message to correlate the
request and the response. If you specify the uuid when sending the request, the replying
Integration Server will use the uuid as the JMSCorrelationID of the reply message. If
you do not specify a uuid , the replying Integration Server uses the JMSMessageID of the
request message as the JMSCorrelationID of the reply message.
427
Even Header
JMS Folder
When replying to a message received using pub.jms:receive, you need to specify the input
parameters consumer and message .
If a transaction has not yet been started, the transaction manager starts a transaction
context for an implicit transaction when Integration Server executes a pub.jms:reply
service that uses a transacted JMS connection alias. A JMS connection alias is considered
to be transacted when it has a transaction type of XA TRANSACTION or LOCAL
TRANSACTION.
If you want more control over the actual javax.jms.Message that Integration
Server sends to the JMS provider, you can create a Java service that calls the
com.wm.app.b2b.server.jms.producer.ProducerFacade class, which will create a
javax.jms.Message. See:
com.wm.app.b2b.server.jms.producer.ProducerFacade.createBytesMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createObjectMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createTextMessage(String)
The Java service calling this API must return an Object of type javax.jms.Message, which
can then be mapped to the JMSMessage/body/message input parameter of the pub.jms:reply
service.
When creating the javax.jms.Message with the
com.wm.app.b2b.server.jms.producer.ProducerFacade, you can use the
javax.jms.Message seer methods to set the values of the message headers and
properties directly. You can also set the value of message headers and properties using
the input parameters of the pub.jms:replyservice that you use to send the message. If
you set the message headers and properties both ways, the values provided to the
pub.jms:replyservice take precedence.
Software AG recommends that you use a pub.jms:reply service to create and send the
JMS message. This may provide beer performance on average. However, if you
want to send a StreamMessage or a MapMessage, you need to use the appropriate
com.wm.app.b2b.server.jms.producer.ProducerFacade API.
When using Universal Messaging or Nirvana 7 SP1 or later as the JMS provider, the
JMS client can use synchronous or asynchronous publishing. To ensure delivery of a
persistent JMS message (deliveryMode is set to PERSISTENT), Integration Server always
uses synchronous publishing to send a persistent JMS message to Universal Messaging
or Nirvana 7 SP1 or later.
Message priority is not supported when Universal Messaging or Nirvana is the JMS
provider. Any value specied in the priority eld will be ignored.
See Also
pub.jms:createConsumer
pub.jms:receive
428
Odd Header
JMS Folder
pub.jms:send
WmPublic. Sends a JMS message to the JMS provider.
Input Parameters
connectionAlias
Name
String Name of the JMS connection alias that you want to use to
send the message.
The JMS connection alias indicates how Integration Server
connects to the JMS provider. A JMS connection alias can
specify that Integration Server use a JNDI provider to look up
administered objects (connection factories and destinations)
and then use the connection factory to create a connection.
Alternatively, a JMS connection alias can specify that Integration
Server uses the native webMethods API to create the connection
directly on the webMethods Broker.
destinationName
destinationType
default.
Description
header
Description
429
Even Header
JMS Folder
deliveryMode
java.lang.Integer Optional.
Species the message priority.
The JMS standard denes
priority levels from 0 to 9,
with 0 as the lowest priority
and 9 as the highest.
The default is 4.
properties
timeToLive
java.lang.Long Optional.
Length of time, in
milliseconds, that the JMS
provider retains the message.
The default is 0, meaning that
the message does not expire.
JMSType
Description
JMS_WMCluster
Nodes
430
Odd Header
JMS Folder
Even Header
JMS Folder
body
Description
string
bytes
object
data
message
432
Odd Header
JMS Folder
useCSQ
Description
header
Description
JMSCorrelationID
JMSDeliveryMode
433
Even Header
JMS Folder
JMSExpiration
java.lang.LongConditional. Time
at which this message expires.
If the message producer did
not specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does not
expire.
Note: When sending a message,
this value is obtained from the
JMSMessage/header/timeToLive
input parameter.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message priority.
The JMS standard denes
priority levels from 0 to 9, with
0 as the lowest priority and 9 as
the highest.
Note: When sending a message,
this value is obtained from the
JMSMessage/header/priority input
parameter.
434
Odd Header
JMS Folder
properties
JMSReplyTo
JMSTimestamp
JMSType
Description
JMS_WMCluster
Nodes
435
Even Header
JMS Folder
body
activation
uuid
Description
string
bytes
object
data
436
Odd Header
JMS Folder
message
Usage Notes
The pub.jms:send service creates a JMS message (javax.jms.Message) based on input
provided to the service or takes an existing JMS message and sends it to the JMS
provider.
If a transaction has not yet been started, the transaction manager starts a transaction
context for an implicit transaction when Integration Server executes a pub.jms:send
service that uses a transacted JMS connection alias. A JMS connection alias is considered
to be transacted when it has a transaction type of XA TRANSACTION or LOCAL
TRANSACTION.
You can add properties to a JMS message when building a ow service that invokes
this service. In Designer, use the Pipeline view to add a new variable to JMSMessage/
properties document.
If the JMS connection alias specied for connectionAliasName uses the native
webMethods API, you need to specify destinationName and destinationType to indicate
where the webMethods Broker should send the message.
Integration Server creates the output parameter JMSMessage because some of the header
elds in a JMS message are populated by the JMS provider after the message is sent. For
example, the header eld JMSMessageID is not in the JMS message sent by Integration
Server, but JMSMessageID is in the header after the JMS provider receives the message.
Each JMS connection alias can be congured to have its own client side queue. A JMS
connection alias has a client side queue if the Maximum CSQ Size property for the alias
is set to a value other than 0 (zero). If you want to use the client side queue with the
pub.jms:send service, the JMS connection alias specied for connectionAliasName must be
congured to have a client side queue. If the JMS connection alias is congured to use
a client side queue and useCSQ is set to true, Integration Server places messages in the
client side queue if the JMS provider is not available at the time the pub.jms:send service
executes. When the JMS provider becomes available, Integration Server sends messages
from the client side queue to the JMS provider.
The JMS provider populates the header elds in the JMSMessage output parameter after
it successfully receives the sent message from Integration Server. If the JMS provider is
not available at the time pub.jms:sendexecutes and useCSQ is set to true, the header elds
in the output JMSMessage will not be populated. Instead these elds will be blank or be
set to 0 (zero).
If the client side queue is not in use (useCSQ is set to false and/or the JMS connection
alias is not congured to use a client side queue, Integration Server throws an
ISRuntimeException if the JMS provider is not available when this service executes.
Make sure to code your service to handle this situation.
437
Even Header
JMS Folder
A JMS connection alias can be congured so that Integration Server retries the
pub.jms:send service automatically when the service fails because of a transient error. For
more information about conguring a JMS connection alias for automatic retry, see the
webMethods Integration Server Administrators Guide.
When sending a message as part of a transaction the client side queue cannot be used.
That is, the useCSQ eld should be set to false. If useCSQ is set to true, Integration
Server throws a JMSSubsystemException when the pub.jms:send service executes. A
JMS message is sent as part of a transaction if the JMS connection alias specied in
connectionAliasName :
Uses a transaction type of LOCAL_TRANSACTION or XA_TRANSACTION.
Connects to the webMethods Broker using a cluster connection factory to which the
multisend guaranteed policy is applied. Integration Server uses an XA transaction to
perform a two-phase commit when sending JMS messages.
If you want more control over the actual javax.jms.Message that Integration
Server sends to the JMS provider, you can create a Java service that calls the
com.wm.app.b2b.server.jms.producer.ProducerFacade class, which will create a
javax.jms.Message. See:
com.wm.app.b2b.server.jms.producer.ProducerFacade.createBytesMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createObjectMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createTextMessage(String)
The Java service calling this API must return an Object of type javax.jms.Message, which
can then be mapped to the JMSMessage/body/message input parameter of the pub.jms:send
service.
When creating the javax.jms.Message with the
com.wm.app.b2b.server.jms.producer.ProducerFacade, you can use the
javax.jms.Message seer methods to set the values of the message headers and
properties directly. You can also set the value of message headers and properties using
the input parameters of the pub.jms:sendservice that you use to send the message. If
you set the message headers and properties both ways, the values provided to the
pub.jms:sendservice take precedence.
Software AG recommends that you use a pub.jms:send service to create and send the
JMS message. This may provide beer performance on average. However, if you
want to send a StreamMessage or a MapMessage, you need to use the appropriate
com.wm.app.b2b.server.jms.producer.ProducerFacade API.
To send a StreamMessage, create a Java service that calls
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String).The Java
service calling this API must return an Object of type javax.jms.Message. Map the
javax.jms.Message object to the JMSMessage/body/message input parameter of the
pub.jms:send service.
438
Odd Header
JMS Folder
pub.jms:sendAndWait
WmPublic. Sends a request in the form of a JMS message to the JMS provider and
optionally, waits for a reply.
Input Parameters
connectionAliasName
String Name of the JMS connection alias that you want to use
to send the message.
The JMS connection alias indicates how Integration Server
connects to the JMS provider. A JMS connection alias can
specify that Integration Server use a JNDI provider to
look up administered objects (connection factories and
destinations) and then use the connection factory to create a
connection. Alternatively, a JMS connection alias can specify
that Integration Server uses the native webMethods API to
create the connection directly on the webMethods Broker.
destinationName
439
Even Header
JMS Folder
default.
destinationType
ReplyTo
is the default.
timeout
440
Odd Header
JMS Folder
JMSMessage
Description
header
Description
deliveryMode
java.lang.Integer Optional.
Species the message priority.
The JMS standard denes
priority levels from 0 to 9,
with 0 as the lowest priority
and 9 as the highest.
The default is 4.
timeToLive
JMSType
441
Even Header
JMS Folder
Description
JMS_WM
ClusterNodes
442
Odd Header
JMS Folder
body
activation
uuid
Description
string
bytes
object
443
Even Header
JMS Folder
data
message
async
444
Odd Header
JMS Folder
Note: If you want to use the client side queue, the JMS
connection alias specied for connectionAliasName must be
congured to have a client side queue. A JMS connection
alias has a client side queue if the Maximum CSQ Size property
for the alias is set to a value other than 0 (zero).
False to throw an ISRuntimeException if the JMS provider
Description
header
Description
JMSCorrelationID
445
Even Header
JMS Folder
JMSDeliveryMode
java.lang.Integer Delivery
mode used to send the
message.
PERSISTENT indicates that
Object Conditional.
Destination (queue or topic)
to which the message was
sent.
JMSExpiration
java.lang.LongOptional.
Time at which this
message expires. If the
message producer did not
specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does
not expire.
Note: When sending
a message, this value
is obtained from the
JMSMessage/header/timeToLive
input parameter.
JMSMessageID
446
Odd Header
JMS Folder
java.lang.Integer Optional.
Denes the message
priority. The JMS standard
denes priority levels from
0 to 9, with 0 as the lowest
priority and 9 as the highest.
Note: When sending
a message, this value
is obtained from the
JMSMessage/header/priority
input parameter.
properties
JMSReplyTo
JMSTimestamp
JMSType
Description
JMS_WMCluster
Nodes
447
Even Header
JMS Folder
the JMS_WMClusterNodes
parameter after it distributes
the JMS message to the
Broker or Brokers in the
Broker cluster.
The JMS_WMClusterNodes
value will be null when:
The JMS provider is not
the Broker Server.
The JMS connection alias
used to send the JMS
message does not use a
cluster connection factory
to obtain the connection to
the Broker Server.
The cluster connection
factory does not permit a
policy to be overridden.
body
activation
uuid
String Conditional. A
universally unique identier
for the message assigned
by the sender. Integration
Server can use the uuid for
exactly-once processing or
for request/reply.
Description
string
bytes
448
Odd Header
JMS Folder
of a one-dimensional byte
array.
object
data
Document Conditional.
Message body in the form of
a document (IData object).
Note: This message format can
only be used when sending
a JMS message from one
Integration Server to another.
When the JMS message is
sent, the sending Integration
Server encodes the IData
into a byte array. When the
receiving Integration Server
receives the message, it
decodes the byte array into
IData.
message
JMSReplyMessage
Description
header
Description
JMSCorrelationID
449
Even Header
JMS Folder
java.lang.Integer Conditional.
Delivery mode used to send
the message.
PERSISTENT indicates that
Object Conditional.
Destination (queue or topic)
to which the message was
sent.
JMSExpiration
java.lang.LongConditional.
Time at which this
message expires. If the
message producer did not
specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does
not expire.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message
450
Odd Header
JMS Folder
java.lang.Boolean
Conditional. Flag indicating
the JMS provider delivered
this message to the JMS
client previously.
True indicates the message
may have been delivered in
the past.
False indicates the JMS
properties
JMSReplyTo
JMSTimestamp
java.lang.Long Conditional.
Time at which the message
was given to the JMS
provider.
JMSType
Description
JMSXDelivery
Count
java.lang.Integer Conditional.
Species the number of
times the JMS provider
delivered the message. Most
JMS providers set this value.
451
Even Header
JMS Folder
JMS_WMCluster
Nodes
body
activation
uuid
String Conditional. A
universally unique identier
for the message assigned
by the sender. Integration
Server can use the uuid for
exactly-once processing or
for request/reply.
452
Odd Header
JMS Folder
Key
Description
string
bytes
object
data
Document Conditional.
Message body in the form of
a document (IData object).
Note: This message format can
only be used when sending
a JMS message from one
Integration Server to another.
When the JMS message is
sent, the sending Integration
Server encodes the IData
into a byte array. When the
receiving Integration Server
receives the message, it
decodes the byte array into
IData.
message
Usage Notes
Thepub.jms:sendAndWait service creates a JMS message (javax.jms.Message) based on input
provided to the service or takes an existing JMS message, sends it to the JMS provider
and optionally, waits for a reply.
If a transaction has not been started, the transaction manager starts a transaction context
for an implicit transaction when Integration Server executes a pub.jms:sendAndWait service
that uses a transacted JMS connection alias. A JMS connection alias is considered
to be transacted when it has a transaction type of XA TRANSACTION or LOCAL
TRANSACTION.
453
Even Header
JMS Folder
You can add properties to a JMS message when building a ow service that invokes
this service. In Designer, use the Pipeline view to add a new variable to JMSMessage/
properties document.
If the JMS connection alias specied for connectionAliasName uses the native
webMethods API, you need to specify destinationName and destinationType to indicate
where the webMethods Broker should send the message.
Integration Server creates the output parameter JMSMessage because some of the header
elds in a JMS message are populated by the JMS provider after the message is sent. For
example, the header eld JMSMessageID is not in the JMS message sent by Integration
Server, but JMSMessageID is in the header after the JMS provider receives the message.
You can use the pub.jms:sendAndWait service to initiate a request/reply. The sending client
sends a request for information to either a topic or queue. Clients that subscribe to the
destination compose and send a reply document that contains the information requested
by the sender.
A single request might receive many reply messages. Integration Server that sent the
request uses only the rst reply document it receives from the JMS provider. Integration
Server discards all other replies. First is arbitrarily dened. There is no guarantee
provided for the order in which the JMS provider processes incoming replies.
The pub.jms:sendAndWait service can be useful in situations where multiple sources contain
the response data. For example, suppose that an enterprise uses one application for
managing customer data, another for storing master customer records, and a mainframe
system for saving customer lists. Each of these applications could answer a request for
customer data. The requesting service will use the rst reply message it receives.
The pub.jms:sendAndWait service can issue a request/reply in a synchronous or
asynchronous manner.
In a synchronous request/reply, the service that sends the request stops executing
while it waits for a reply. When the service receives a reply message, the service
resumes execution. If the timeout elapses before the service receives a reply,
Integration Server ends the request, and the service returns a null message that
indicates that the request timed out. Integration Server then executes the next step in
the ow service.
In an asynchronous request/reply, the service that sends the request continues
executing the steps in the service after sending the message. To retrieve the reply,
the requesting ow service must invoke the pub.jms:waitForReply service. If the timeout
value specied in pub.jms:waitForReply elapses before the pub.jms:waitForReply service
receives a reply, the pub.jms:waitForReply service returns a null document indicating
that the request timed out.
When using pub.jms:sendAndWait to issue a request/reply, you must specify a queue as the
value of the destinationNameReplyTo parameter. In a request/reply scenario, it is possible
that the message consumer created to receive the reply might be created after the reply
message is sent. (In a synchronous request/reply, the pub.jms:sendAndWait service creates
the message consumer. In an asynchronous request/reply, the pub.jms:waitForReply service
or a custom solution, such as a JMS trigger, creates the message consumer.) If the reply
454
Odd Header
JMS Folder
destination is a queue, a message consumer can receive messages published to the queue
regardless of whether the message consumer was active at the time the message was
published. If the destination is a topic, a message consumer can receive only messages
published when the message consumer was active. If the reply is sent to a topic before
the message consumer is created, the message consumer will not receive the reply.
Consequently, when creating a request/reply, the destinationNameReplyTo parameter
should specify the name or lookup name of a queue.
A service that contains multiple asynchronous send and wait invocations allows the
service to send all the requests before collecting the replies. This approach can be more
ecient than sending a request, waiting for a reply, and then sending the next request.
The replying Integration Server uses the value of uuid or JMSMessageID in the
requesting JMS message to correlate the request and the response. If you specify
the uuid when sending the request, the replying Integration Server will use the
uuid as the JMSCorrelationID of the reply message. If you do not specify a uuid , the
replying Integration Server uses the JMSMessageID set by the JMS provider as the
JMSCorrelationID of the reply message.
If you create a service that contains multiple asynchronous requests, make sure to
link the JMSMessage eld (uuid or JMSMessageID ) whose value will be used as the
reply message's JMSCorrelationID to another eld in the pipeline. Each asynchronous
request produces a JMSMessage document in the pipeline. If you do not link the uuid
or JMSMessageID eld from the JMSMessage document to another eld, the next
asynchronous request (that is, the next execution of the pub.jms:sendAndWait service), will
overwrite the previous JMSMessage document. When you invoke the pub.jms:waitForReply
service, the pipeline will contain only the input needed to retrieve the reply to the last
request. The pipeline will not contain the information needed to retrieve replies to
the previous requests. (That is, there will be nothing to map to the correlationID input
parameter of the pub.jms:waitForReply service.)
Each JMS connection alias can be congured to have its own client side queue. A JMS
connection alias has a client side queue if the Maximum CSQ Size property for the alias
is set to a value other than 0 (zero). If you want to use the client side queue with the
pub.jms:sendAndWait service, the JMS connection alias specied for connectionAliasName
must be congured to have a client side queue. If the JMS connection alias is congured
to use a client side queue and useCSQ is set to true, Integration Server places
messages in the client side queue if the JMS provider is not available at the time
the pub.jms:sendAndWait service executes. When the JMS provider becomes available,
Integration Server sends messages from the client side queue to the JMS provider.
If the client side queue is not used (useCSQ is set to false or the JMS connection
alias is not congured to have a client side queue), Integration Server throws an
ISRuntimeException if the JMS provider is not available when this service executes.
Make sure to code your service to handle this situation.
Integration Server can write messages to the client side queue only for messages sent as
part of an asynchronous request/reply. That is, if async is set to true (the default) and
the JMS provider is not available at the time this service executes, Integration Server
places the message in the client side queue. The client side queue cannot be used for a
synchronous request/reply.
455
Even Header
JMS Folder
The client side queue cannot be used if the reply destination is a temporary
queue. Consequently, if useCSQ is set to true, values must be specied for the
destinationNameReplyTo and destinationTypeReplyTo input parameters. If these
parameters are not specied, Integration Serverthrows the following ServiceException
when it executes the pub.jms:sendAndWait service: [ISS.0134.9082] The client side queue
cannot be used with a send and wait request if the reply destination is a temporary
queue.
The JMS provider populates the header elds in the JMSMessage output parameter after
it successfully receives the sent message from Integration Server. If the JMS provider is
not available at the time the pub.jms:sendAndWait executes and useCSQ is set to true, the
header elds in the output JMSMessage will not be populated. Instead these elds will be
blank or be set to 0 (zero).
The pub.jms:waitForReply service cannot be used to retrieve response to requests that were
routed through the client side queue. To retrieve the response, create a JMS trigger that
subscribes to the reply to queue.
If the pub.jms:sendAndWait service executes and the message is sent directly to the
JMS provider (i.e., it is not sent to the client side queue), the JMSMessage\header
\JMSMessageID contains a unique identier assigned by the JMS provider. If the
JMSMessageID eld is null after the service executes, the JMS provider was not available
at the time the service executed.Integration Server wrote the message to the client side
queue.
When sending a message as part of a transaction client side queuing cannot be used.
That is, the useCSQ eld should be set to false. If useCSQ is set to true, Integration
Server throws a JMSSubsystemException when the pub.jms:sendAndWait service executes.
A JMS message is sent as part of a transaction if the JMS connection alias specied in
connectionAliasName :
Uses a transaction type of LOCAL_TRANSACTION or XA_TRANSACTION.
Connects to the webMethods Broker using a cluster connection factory to which the
multisend guaranteed policy is applied. Integration Server uses an XA transaction to
perform a two-phase commit when sending JMS messages.
If you do not specify a destination for reply messages, Integration Server uses a
temporaryQueue to receive the reply. A temporaryQueue is a queue object created for
the duration of a particular connection. It can only be consumed by the connection from
which it was created.
If you want more control over the actual javax.jms.Message that Integration
Server sends to the JMS provider, you can create a Java service that calls the
com.wm.app.b2b.server.jms.producer.ProducerFacade class, which will create a
javax.jms.Message. See:
com.wm.app.b2b.server.jms.producer.ProducerFacade.createBytesMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createObjectMessage(String)
456
Odd Header
JMS Folder
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createTextMessage(String)
The Java service calling this API must return an Object of type javax.jms.Message,
which can then be mapped to the JMSMessage/body/message input parameter of the
pub.jms:sendAndWait service.
When creating the javax.jms.Message with the
com.wm.app.b2b.server.jms.producer.ProducerFacade, you can use the
javax.jms.Message seer methods to set the values of the message headers and
properties directly. You can also set the value of message headers and properties using
the input parameters of the pub.jms:sendAndWaitservice that you use to send the message.
If you set the message headers and properties both ways, the values provided to the
pub.jms:sendAndWaitservice take precedence.
Software AG recommends that you use a pub.jms:sendAndWait service to create and send
the JMS message. This method may provide beer performance on average. However, if
you want to send a StreamMessage or a MapMessage, you need to use the appropriate
com.wm.app.b2b.server.jms.producer.ProducerFacade API.
To send a StreamMessage, create a Java service that calls
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String).The Java
service calling this API must return an Object of type javax.jms.Message. Map the
javax.jms.Message object to the JMSMessage/body/message input parameter of the
pub.jms:sendAndWait service.
To send a MapMessage, create a Java service that calls
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String).The Java
service calling this API must return an Object of type javax.jms.Message. Map the
javax.jms.Message object to the JMSMessage/body/message input parameter of the
pub.jms:sendAndWait service.
If you use the input parameter JMS_WMClusterNodes to override the policy applied to
the cluster connection factory, make sure to code the invoking service to handle any
exception that the Broker Server throws when policy requirements are not or cannot
be met. For more information about policy override scenarios that might result in an
exception from Broker Server, see Using webMethods Integration Server to Build a Client for
JMS.
When using Universal Messaging or Nirvana 7 SP1 or later as the JMS provider, the
JMS client can use synchronous or asynchronous publishing. To ensure delivery of a
persistent JMS message (deliveryMode is set to PERSISTENT), Integration Server always
uses synchronous publishing to send a persistent JMS message to Universal Messaging
or Nirvana 7 SP1 or later.
Message priority is not supported when Universal Messaging or Nirvana is the JMS
provider. Any value specied in the priority eld will be ignored.
See Also
pub.jms:reply
pub.jms:waitForReply
webMethods Integration Server Built-In Services Reference Version 9.6
457
Even Header
JMS Folder
pub.jms:sendBatch
WmPublic. Sends a group of JMS messages to the same destination on the webMethods
Broker.
Input Parameters
connectionAliasName
String Name of the JMS connection alias that you want to use to
send the messages.
The JMS connection alias indicates how Integration Server
connects to the webMethods Broker. A JMS connection alias
can specify that Integration Server use a JNDI provider to look
up administered objects (connection factories and destinations)
and then use the connection factory to create a connection.
Alternatively, a JMS connection alias can specify that Integration
Server uses the native webMethods API to create the connection
directly on the webMethods Broker.
Note: connectionAliasName must specify a JMS connection alias that
uses the webMethods Broker as the JMS provider.
destinationName
destinationType
default.
458
Odd Header
JMS Folder
timeToLive
JMSMessages
Description
header
properties
Key
Description
JMSType
459
Even Header
JMS Folder
body
Key
Description
activation
uuid
Description
string
bytes
object
data
460
Odd Header
JMS Folder
Broker is not available at the time this service executes. This is the
default.
Output Parameters
JMSMessages
Description
header
461
Even Header
JMS Folder
Key
Description
JMSCorrelationID
JMSDeliveryMode
JMSExpiration
java.lang.LongConditional. Time
at which this message expires.
If the message producer did
not specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does not
expire.
Note: When sending a message,
this value is obtained from the
JMSMessage/header/timeToLive
input parameter.
462
Odd Header
JMS Folder
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message priority.
The JMS standard denes
priority levels from 0 to 9, with
0 as the lowest priority and 9 as
the highest.
Note: When sending a message,
this value is obtained from the
JMSMessage/header/priority input
parameter.
properties
JMSReplyTo
JMSTimestamp
JMSType
Description
activation
uuid
463
Even Header
JMS Folder
Description
string
bytes
object
data
message
Usage Notes
The pub.jms:sendBatch service can be used only with the webMethods Broker. If you set
the connectionAliasName parameter to a JMS connection alias that uses a dierent JMS
provider, the pub.jms:sendBatch service ends with an exception.
464
Odd Header
JMS Folder
465
Even Header
JMS Folder
When sending a message as part of a transaction, the client side queue cannot be
used. The useCSQ eld should be set to false. If useCSQ is set to true, Integration
Server throws a JMSSubsystemException when the pub.jms:send service executes.
A JMS message is sent as part of a transaction if the JMS connection alias specied
in connectionAliasName uses a transaction type of LOCAL_TRANSACTION or
XA_TRANSACTION.
The JMS provider populates the header elds in the JMSMessages output parameter after
it successfully receives the sent message from Integration Server. If the JMS provider is
not available at the time pub.jms:sendBatchexecutes and useCSQ is set to true, the header
elds in the output JMSMessages will not be populated. Instead these elds will be blank
or be set to 0 (zero).
If you want more control over the actual javax.jms.Message that Integration
Server sends to the JMS provider, you can create a Java service that calls the
com.wm.app.b2b.server.jms.producer.ProducerFacade class, which will create a
javax.jms.Message. See:
com.wm.app.b2b.server.jms.producer.ProducerFacade.createBytesMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createObjectMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String)
com.wm.app.b2b.server.jms.producer.ProducerFacade.createTextMessage(String)
The Java service calling this API must return an Object of type javax.jms.Message, which
can then be mapped to the JMSMessage/body/message input parameter of the pub.jms:send
service.
When creating the javax.jms.Message with the
com.wm.app.b2b.server.jms.producer.ProducerFacade, you can use the
javax.jms.Message seer methods to set the values of the message headers and
properties directly. You can also set the value of message headers and properties using
the input parameters of the pub.jms:sendservice that you use to send the message. If
you set the message headers and properties both ways, the values provided to the
pub.jms:sendservice take precedence.
Software AG recommends that you use a pub.jms:sendBatch service to create and send
the JMS message. This may provide beer performance on average. However, if you
want to send a StreamMessage or a MapMessage, you need to use the appropriate
com.wm.app.b2b.server.jms.producer.ProducerFacade API.
To send a StreamMessage, create a Java service that calls
com.wm.app.b2b.server.jms.producer.ProducerFacade.createStreamMessage(String).The Java
service calling this API must return an Object of type javax.jms.Message. Map the
javax.jms.Message object to the JMSMessage/body/message input parameter of the
pub.jms:send service.
To send a MapMessage, create a Java service that calls
com.wm.app.b2b.server.jms.producer.ProducerFacade.createMapMessage(String).The Java
service calling this API must return an Object of type javax.jms.Message. Map the
webMethods Integration Server Built-In Services Reference Version 9.6
466
Odd Header
JMS Folder
pub.jms:triggerSpec
WmPublic. Specication for the input signature of a JMS trigger that processes one
message at a time.
Input Parameters
JMSMessage
Output Parameters
None.
Usage Notes
If you want to use a JMS trigger to retrieve and process multiple messages in one batch,
use pub.jms:batchTriggerSpec to declare the inputs and outputs of the JMS trigger service.
See Also
pub.jms:batchTriggerSpec
pub.jms:JMSMessage
pub.jms:waitForReply
WmPublic. Retrieves the reply message for an asynchronous request.
Input Parameters
correlationID
467
Even Header
JMS Folder
timeout
Output Parameters
JMSReplyMessage
Description
header
Description
JMSCorrelationID
JMSDeliveryMode
java.lang.Integer Conditional.
Delivery mode used to send
the message.
PERSISTENT indicates that
the JMS provider provides
once-and-only-once delivery
for the message. The
message will not be lost if a
JMS provider failure occurs.
NON_PERSISTENT indicates
Object Conditional.
Destination (queue or topic)
468
Odd Header
JMS Folder
java.lang.LongConditional.
Time at which this
message expires. If the
message producer did not
specify a time-to-live, the
JMSExpiration value is zero,
indicating the message does
not expire.
JMSMessageID
JMSPriority
java.lang.Integer Conditional.
Denes the message
priority. The JMS standard
denes priority levels from
0 to 9, with 0 as the lowest
priority and 9 as the highest.
JMSRedelivered
java.lang.Boolean Conditional.
Flag indicating the JMS
provider delivered this
message to the JMS client
previously.
True indicates the message
JMSTimestamp
java.lang.Long Conditional.
Time at which the message
was given to the JMS
provider.
469
Even Header
JMS Folder
JMSType
properties
Description
JMSXDeliveryCount
java.lang.Integer Conditional.
Species the number of
times the JMS provider
delivered the message to the
requesting client. Most JMS
providers set this value.
JMS_WMCluster
Nodes
470
Odd Header
JMS Folder
body
activation
uuid
String Conditional. A
universally unique identier
for the message assigned
by the sender. Integration
Server can use the uuid for
exactly-once processing or
for request/reply.
Description
string
bytes
object
data
471
Even Header
JMS Folder
Usage Notes
Integration Server uses the value of the uuid or JMSMessageID elds in the requesting
JMS message to correlate the response to the request. If you specify the uuid
when sending the request, the replying Integration Server will use the uuid as the
JMSCorrelationID of the reply message (JMSReplyMessage ). If you do not specify a uuid ,
the replying Integration Server uses the JMSMessageID set by the JMS provider as the
JMSCorrelationID of the reply message (JMSReplyMessage ).
If you set the uuid in the JMS message request, you can link the value of the uuid eld
from the JMSMessage produced by the pub.jms:sendAndWait service to the correlationID
input eld of the pub.jms:waitForReply service. If you did not specify a uuid , you can link
the JMSMessageID eld from the JMSMessage produced by the pub.jms:sendAndWait to the
correlationID input eld.
The timeout value of the sending service species how long Integration Server will
keep the request open while waiting for a reply. If a reply is not available at the time
Integration Server executes the pub.jms:waitForReply service, Integration Server continues
to wait for the document until the time specied in the timeout parameter elapses. If
Integration Server does not receive a reply by the time the timeout interval elapses,
the pub.jms:waitForReply service returns a null document. This indicates that the timeout
interval expired.
The pub.jms:waitForReply service cannot be used to retrieve response to requests that were
routed through the client side queue. To retrieve the response, create a JMS trigger that
subscribes to the reply to queue
If the pub.jms:sendAndWait service executes and the message is sent directly to the
JMS provider (i.e., it is not sent to the client side queue), the JMSMessage\header
\JMSMessageID contains a unique identier assigned by the JMS provider. If the
JMSMessageID eld is null after the service executes, the JMS provider was not available
at the time the service executed. Integration Server wrote the message to the client side
queue.
See Also
pub.jms:sendAndWait
pub.jms.wmjms:receiveStream
WmPublic. Receives a large message stream from a queue or topic on the webMethods
Broker.
472
Odd Header
JMS Folder
Input Parameters
consumer
timeout
Output Parameters
stream
Object A com.webmethods.jms.impl.WmJMSInputStream
received by the consumer.
If the timeout value elapses before a message is received,
stream will be null.
Usage Notes
When using webMethods Broker as the JMS provider, the webMethods message
streaming feature allows you to stream large amounts of data or a large le from a
message producer to a message consumer.
Important: You can only send and receive large messages from Integration Server
when working with the webMethods Broker. For more information about how the
webMethods message streaming feature works on the webMethods Broker, see the
webMethods Broker Messaging Programmers Guide.
Large message streams cannot be sent or received as part of a transaction.
If the JMS connection alias used by the consumer has a transaction type of
LOCAL_TRANSACTION or XA_TRANSACTION, Integration Server throws an
exception, specically com.wm.app.b2b.server.jms.JMSSubsystemException, when it
executes the pub.jms.wmjms:receiveStream service.
The consumer that you use to receive the message determines the destination from
which this services receives messages and the JMS connection alias used to receive the
messages. You can create a message consumer object using the pub.jms:createConsumer
service.
The timeout value species how long the message consumer waits for the initial part of
the message stream. If a message is not returned when the time out period elapses, the
pub.jms.wmjms:receiveStream returns a null value.
The read timeout is the maximum length of time the consumer waits between receiving
subsequent pieces of the message stream. After the read timeout elapses, the consumer
calls InputStream.read() to read the next byte of the stream. If the next byte of the stream
473
Even Header
JMS Folder
pub.jms.wmjms:sendStream
WmPublic. Sends a large message stream to the webMethods Broker.
474
Odd Header
JMS Folder
Input Parameters
connectionAliasName
String Name of the JMS connection alias that you want to use
to send the message.
destinationName
destinationType
Output Parameters
None.
Usage Notes
When using the webMethods Broker as the JMS provider, the webMethods message
streaming feature allows you to stream large amounts of data or a large le from
a message producer to a message consumer. You can only send and receive large
messages from Integration Server when working with the webMethods Broker. For
more information about how the webMethods message streaming feature works on the
webMethods Broker, see the webMethods Broker Messaging Programmers Guide.
Large message streams cannot be sent or received as part of a transaction. If
connectionAliasName species a JMS connection alias with a transaction type of
LOCAL_TRANSACTION or XA_TRANSACTION, Integration Server throws the
exception com.wm.app.b2b.server.jms.JMSSubsystemException when it executes the
pub.jms.wmjms:sendStream service.
475
Even Header
JMS Folder
If the connection between Integration Server and the webMethods Broker fails before the
pub.jms.wmjms:sendStream sends the entire message stream, you need to re-send the entire
stream when the connection is re-established.
See Also
pub.jms.wmjms:receiveStream
476
Odd Header
JSON Folder
15 JSON Folder
Data Type Mapping ....................................................................................................................
478
479
477
Even Header
JSON Folder
You use the elements in the JSON folder to convert JSON content into a document (IData
object), and a document (IData object) into JSON content.
Integration Server
object
Document
string
String
number (integer)
number (real)
True/False
null
null
All others
String
Note: If an object has a toString() implementation,
Integration Server uses that implementation.
If the object does not provide a toString()
implementation, Integration Server uses Object.toString().
Object.toString() returns the class name and hexadecimal
representation of the hash code of the object, such as
"javax.namining.InitialContext@3ae6f00b".
478
Odd Header
JSON Folder
pub.json:documentToJSONString
pub.json:jsonStreamToDocument
pub.json:jsonStringToDocument
pub.json:documentToJSONString
WmPublic. Converts a document (IData object) to a JSON string.
Input Parameters
document
preyPrint
state. The service will not add any additional carriage returns or
indentation to the JSON content.
479
Even Header
JSON Folder
Usage Notes
To turn a document in a pipeline into a JSON response to send over HTTP, the
application's service can:
1. Use pub.json:documentToJSONString to turn a document (IData object) in the pipeline into
a string of JSON content.
2. Call pub.client:http to send the JSON string as an HTTP request.
3. Set the Content-Type header eld to application/json.
pub.json:jsonStreamToDocument
WmPublic. Converts content from the JSON content stream to a document (an IData
object).
Input Parameters
jsonStream
decodeRealAsDouble
480
Odd Header
JSON Folder
decodeIntegerAsLong
the default.
Usage Notes
The JSON content handler in Integration Server creates a jsonStream object in the
pipeline when a client sends a request to Integration Server using the application/json
Content-Type. The pub.json:jsonStreamToDocument service converts the jsonStream into a
document (IData object) so you can use the elements from jsonStream in a ow service.
If wa.server.hp.jsonFormat is set to stream, Integration Server places a jsonStream
variable in the pipeline when it receives an HTTP request containing JSON content. You
can then use pub.json:jsonStreamToDocument to parse jsonStream into pipeline variables. For
more information about wa.server.hp.jsonFormat, see webMethods Integration Server
Administrators Guide.
pub.json:jsonStringToDocument
WmPublic. Converts a JSON string to a document (an IData object).
Input Parameters
jsonString
decodeRealAsDouble
481
Even Header
JSON Folder
the default.
482
Odd Header
List Folder
16 List Folder
Summary of Elements in this Folder .........................................................................................
484
483
Even Header
List Folder
You use the elements in the list folder to retrieve, replace, or add elements in an Object
List, Document List, String List, or Vector. You also use list services to convert String
Lists to Document Lists or a Vector to an Array.
pub.list:addItemToVector
pub.list:appendToDocumentList
pub.list:appendToStringList
pub.list:sizeOfList
pub.list:stringListToDocumentList
pub.list:vectorToArray
pub.list:addItemToVector
WmPublic. Adds an item or a list of items to a java.util.Vector object.
Input Parameters
vector
item
484
Odd Header
List Folder
the item as well as the list of items will be added to the vector
object.
itemList
addNulls
Output Parameters
vector
Usage Notes
Either of the optional input parameters, item or itemList , is required.
pub.list:appendToDocumentList
WmPublic. Adds documents to a document list.
Input Parameters
toList
fromList
fromItem
485
Even Header
List Folder
Output Parameters
toList
Usage Notes
The documents contained in fromList and fromItem are not actually appended as entries
to toList . Instead, references to the documents in fromList and fromItem are appended
as entries to toList . Consequently, any changes made to the documents in fromList and
fromItem also aect the resulting toList .
pub.list:appendToStringList
WmPublic. Adds Strings to a String list.
Input Parameters
toList
fromList
fromItem
Output Parameters
toList
String List The toList String list with the Strings from fromList
and fromItem appended to it.
Usage Notes
The Strings contained in fromList and fromItem are not actually appended as entries to
toList . Instead, references to the Strings in fromList and fromItem are appended as entries
to toList . Consequently, any changes made to the Strings in fromList and fromItem also
aect the resulting toList .
486
Odd Header
List Folder
pub.list:sizeOfList
WmPublic. Returns the number of elements in a list.
Input Parameters
fromList
Document List, String List, or Object List Optional. List whose size
you want to discover. If fromList is not specied, the service
returns a size of 0.
Output Parameters
size
fromList
Usage Notes
For example, if fromList consists of:
fromList [0] = "a"
fromList [1] = "b"
fromList [2] = "c"
The result would be:
size ="3"
pub.list:stringListToDocumentList
WmPublic. Converts a String list to a document list.
Input Parameters
fromList
key
487
Even Header
List Folder
Output Parameters
toList
Usage Notes
Creates a document list containing one document for each element in the fromList . Each
document will contain a single String element named key .
For example, if fromList consists of:
fromList [0] = "a"
fromList [1] = "b"
fromList [2] = "c"
key = "myKey"
The result would be:
pub.list:vectorToArray
WmPublic. Converts a java.util.Vector object to an array.
Input Parameters
vector
stronglyType
default.
488
Odd Header
List Folder
489
Even Header
490
Odd Header
Math Folder
17 Math Folder
Summary of Elements in this Folder .........................................................................................
492
491
Even Header
Math Folder
You use the elements in the math folder to perform mathematical operations on stringbased numeric values.
Note: Services that operate on integer values use Java's long data type (64-bit, two's
complement). Services that operate on oat values use Java's double data type (64-bit
IEEE 754). If extremely precise calculations are critical to your application, you should
write your own Java services to perform math functions.
pub.math:absoluteValue
pub.math:addFloatList
pub.math:addFloats
pub.math:addIntList
pub.math:addInts
pub.math:addObjects
pub.math:divideFloats
pub.math:divideInts
pub.math:divideObjects
492
Odd Header
Math Folder
Element
pub.math:max
pub.math:min
pub.math:multiplyFloatList
pub.math:multiplyFloats
pub.math:multiplyIntList
pub.math:multiplyInts
pub.math:multiplyObjects
pub.math:randomDouble
pub.math:roundNumber
pub.math:subtractFloats
pub.math:subtractInts
pub.math:subtractObjects
pub.math:toNumber
493
Even Header
Math Folder
pub.math:absoluteValue
WmPublic. Returns the absolute value of the input number.
Input Parameters
String Number whose absolute value is to be returned.
num
Output Parameters
positiveNumber
pub.math:addFloatList
WmPublic. Adds a list of oating point numbers (represented in a string list) and
returns the sum.
Input Parameters
numList
Output Parameters
value
Description
Infinity
Infinity
0.0
494
Odd Header
Math Folder
NaN
Usage Notes
Make sure the strings that are passed to the service in numList are in a locale-neutral
format (that is, using the paern -.). Passing locally formaed strings may result
in unexpected results. For example, calling pub.math:addFloats in a German locale with the
arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:addFloats
WmPublic. Adds one oating point number (represented as a String) to another and
returns the sum.
Input Parameters
num1
num2
precision
Output Parameters
value
Description
Infinity
Infinity
495
Even Header
Math Folder
0.0
NaN
Usage Notes
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
Use the wa.server.math.oatOperation.mode property to specify whether
the pub.math:addFloats service return the exact result of an operation involving
two oating point numbers, the result as calculated by the JVM, or the
result based on a xed number of decimal places. For information about the
wa.server.math.oatOperation.mode property, see the webMethods Integration Server
Administrators Guide.
pub.math:addIntList
WmPublic. Adds a list of integers (represented in a String list) and returns the sum.
Input Parameters
numList
Output Parameters
value
Usage Notes
Make sure the strings that are passed to the service in numList are in a locale-neutral
format (that is, using the paern -.). Passing locally formaed strings may result
in unexpected results. For example, calling pub.math:addFloats in a German locale with the
arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
496
Odd Header
Math Folder
pub.math:addInts
WmPublic. Adds one integer (represented as a String) to another and returns the sum.
Input Parameters
num1
num2
Output Parameters
String Sum of num1 and num2 .
value
Usage Notes
Make sure the result of your calculation is less than 64 bits in width (the maximum
width for the long data type). If the result exceeds this limit, it will generate a data
overow.
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:addObjects
WmPublic. Adds one java.lang.Number object to another and returns the sum.
Input Parameters
num1
java.lang.Number Number to add. See the Usage Notes for supported subclasses.
num2
java.lang.Number Number to add. See the Usage Notes for supported subclasses.
Output Parameters
value
497
Even Header
Math Folder
Usage Notes
This service accepts the following sub-classes of java.lang.Number: java.lang.Byte,
java.lang.Double, java.lang.Float, java.lang.Integer, java.lang.Long, java.lang.Short.
This service applies the following rules for binary numeric promotion to the operands in
order:
If either operand is of type Double, the other is converted to Double.
Otherwise, if either operand is of type Float, the other is converted to Float.
Otherwise, if either operand is of type Long, the other is converted to Long.
Otherwise, both operands are converted to type Integer.
These promotion rules mirror the Java rules for numeric promotion of numeric types.
pub.math:divideFloats
WmPublic. Divides one oating point number (represented as a String) by another
(num1/num2 ) and returns the quotient.
Input Parameters
num1
num2
precision
Output Parameters
value
Description
498
Odd Header
Math Folder
Infinity
Infinity
0.0
NaN
Usage Notes
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
Use the wa.server.math.oatOperation.mode property to specify whether
the pub.math:divideFloats service return the exact result of an operation involving
two oating point numbers, the result as calculated by the JVM, or the
result based on a xed number of decimal places. For information about the
wa.server.math.oatOperation.mode property, see the webMethods Integration Server
Administrators Guide.
pub.math:divideInts
WmPublic. Divides one integer (represented as a String) by another (num1/num2 ) and
returns the quotient.
Input Parameters
num1
num2
Output Parameters
value
499
Even Header
Math Folder
Usage Notes
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:divideObjects
WmPublic. Divides one java.lang.Number object by another (num1/num2 ) and returns
the quotient.
Input Parameters
num1
java.lang.Number Number that is the dividend. See the Usage Notes for
supported sub-classes.
num2
java.lang.Number Number that is the divisor. See the Usage Notes for
supported sub-classes.
Output Parameters
value
Usage Notes
This service accepts the following sub-classes of java.lang.Number: java.lang.Byte,
java.lang.Double, java.lang.Float, java.lang.Integer, java.lang.Long, java.lang.Short.
This service applies the following rules for binary numeric promotion to the operands in
order:
If either operand is of type Double, the other is converted to Double.
Otherwise, if either operand is of type Float, the other is converted to Float.
Otherwise, if either operand is of type Long, the other is converted to Long.
Otherwise, both operands are converted to type Integer.
These promotion rules mirror the Java rules for numeric promotion of numeric types.
pub.math:max
WmPublic. Returns the largest number from a list of numbers.
500
Odd Header
Math Folder
Input Parameters
numList
Output Parameters
maxValue
pub.math:min
WmPublic. Returns smallest number from a list of numbers.
Input Parameters
numList
Output Parameters
minValue
pub.math:multiplyFloatList
WmPublic. Multiplies a list of oating point numbers (represented in a String list) and
returns the product.
Input Parameters
numList
Output Parameters
value
501
Even Header
Math Folder
Value
Description
Infinity
Infinity
0.0
NaN
Usage Notes
Make sure the strings that are passed to the service in numList are in a locale-neutral
format (that is, using the paern -.). Passing locally formaed strings may result
in unexpected results. For example, calling pub.math:addFloats in a German locale with the
arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:multiplyFloats
WmPublic. Multiples one oating point number (represented as String) by another and
returns the product.
Input Parameters
num1
num2
precision
502
Odd Header
Math Folder
Output Parameters
value
Description
Infinity
Infinity
0.0
NaN
Usage Notes
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
Use the wa.server.math.oatOperation.mode property to specify whether the
pub.math:multiplyFloats service return the exact result of an operation involving two oating
point numbers, the result as calculated by the JVM, or the result based on a xed
number of decimal places. See webMethods Integration Server Administrators Guide for
more information about the wa.server.math.oatOperation.mode property.
pub.math:multiplyIntList
WmPublic. Multiplies a list of integers (represented in a String list) and returns the
product.
503
Even Header
Math Folder
Input Parameters
String List Numbers (oating point numbers represented as Strings) to
multiply.
numList
Output Parameters
String Product of the numbers in numList .
value
Usage Notes
Make sure the result of your calculation is less than 64 bits in width (the maximum
width for the long data type). If the result exceeds this limit, it will generate a data
overow.
Make sure the strings that are passed to the service in numList are in a locale-neutral
format (that is, using the paern -.). Passing locally formaed strings may result
in unexpected results. For example, calling pub.math:addFloats in a German locale with the
arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:multiplyInts
WmPublic. Multiplies one integer (represented as a String) by another and returns the
product.
Input Parameters
num1
num2
Output Parameters
value
Usage Notes
Make sure the result of your calculation is less than 64 bits in width (the maximum
width for the long data type). If the result exceeds this limit, it will generate a data
overow.
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
webMethods Integration Server Built-In Services Reference Version 9.6
504
Odd Header
Math Folder
pub.math:multiplyObjects
WmPublic. Multiplies one java.lang.Number object by another and returns the product.
Input Parameters
num1
num2
Output Parameters
value
Usage Notes
This service accepts the following sub-classes of java.lang.Number: java.lang.Byte,
java.lang.Double, java.lang.Float, java.lang.Integer, java.lang.Long, java.lang.Short.
This service applies the following rules for binary numeric promotion to the operands in
order:
If either operand is of type Double, the other is converted to Double.
Otherwise, if either operand is of type Float, the other is converted to Float.
Otherwise, if either operand is of type Long, the other is converted to Long.
Otherwise, both operands are converted to type Integer.
These promotion rules mirror the Java rules for numeric promotion of numeric types.
pub.math:randomDouble
WmPublic. Returns the next pseudorandom, uniformly distributed double between 0.0
and 1.0.
Random number generators are often referred to as pseudorandom number generators
because the numbers produced tend to repeat themselves over time.
505
Even Header
Math Folder
Input Parameters
None.
Output Parameters
number
pub.math:roundNumber
WmPublic. Returns a rounded number.
Input Parameters
num
numberOfDigits
roundingMode
Output Parameters
roundedNumber
pub.math:subtractFloats
WmPublic. Subtracts one oating point number (represented as a String) from another
and returns the dierence.
Input Parameters
num1
506
Odd Header
Math Folder
num2
precision
Output Parameters
value
Description
Infinity
Infinity
0.0
NaN
Usage Notes
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
Use the wa.server.math.oatOperation.mode property to specify whether the
pub.math:subtractFloats service return the exact result of an operation involving
two oating point numbers, the result as calculated by the JVM, or the result
based on a xed number of decimal places. For more information about the
507
Even Header
Math Folder
pub.math:subtractInts
WmPublic. Subtracts one integer (represented as a String) from another and returns the
dierence.
Input Parameters
num1
num2
Output Parameters
value
Usage Notes
Make sure the result of your calculation is less than 64 bits in width (the maximum
width for the long data type). If the result exceeds this limit, it will generate a data
overow.
Make sure the strings that are passed to the service in num1 andnum2 are in a localeneutral format (that is, using the paern -.). Passing locally formaed strings
may result in unexpected results. For example, calling pub.math:addFloats in a German
locale with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
pub.math:subtractObjects
WmPublic. Subtracts one java.lang.Number object from another and returns the
dierence.
Input Parameters
num1
num2
508
Odd Header
Math Folder
Output Parameters
value
Usage Notes
This service accepts the following sub-classes of java.lang.Number: java.lang.Byte,
java.lang.Double, java.lang.Float, java.lang.Integer, java.lang.Long, java.lang.Short.
This service applies the following rules for binary numeric promotion to the operands.
The following rules are applied in order:
If either operand is of type Double, the other is converted to Double.
Otherwise, if either operand is of type Float, the other is converted to Float.
Otherwise, if either operand is of type Long, the other is converted to Long.
Otherwise, both operands are converted to type Integer.
These promotion rules mirror the Java rules for numeric promotion of numeric types.
pub.math:toNumber
WmPublic. Converts a string to numeric data type.
Input Parameters
num
convertAs
String Optional. Species the Java numeric data type to which the num
parameter is to be converted.
Valid values for the convertAs parameter
are java.lang.Double, java.lang.Float,
java.lang.Integer,java.math.BigDecimal,java.math.BigInteger,
java.lang.Long. The default value is java.lang.Double.
Output Parameters
num
509
Even Header
510
Odd Header
Metadata Folder
18 Metadata Folder
Summary of Elements in this Folder .........................................................................................
512
511
Even Header
Metadata Folder
You use the elements in the metadata folder to publish metadata about Integration
Server packages and administrative assets to the CentraSite shared registry.
pub.metadata.assets:publishPackages
pub.metadata.assets:publishPackages
WmAssetPublisher. Publishes metadata about Integration Server packages, the
supported assets in the package, and administrative assets to the CentraSite shared
registry.
Input Parameters
packages
includeServerAssets
512
Odd Header
Metadata Folder
For instructions about creating a scheduled task, see webMethods Integration Server
Administrators Guide
For the pub.metadata.assets:publishPackages service to execute successfully, Integration
Server must be congured to connect to CentraSite and the CentraSite connection
must be available. If Integration Server is not congured to connect to CentraSite
or the connection is not available, Integration Server returns a ServiceException.
For information about conguring the connection to CentraSite, see webMethods
Integration Server Administrators Guide.
When this service executes, it publishes metadata using Integration Server
credentials.
513
Even Header
514
Odd Header
MIME Folder
19 MIME Folder
Summary of Elements in this Folder .........................................................................................
516
515
Even Header
MIME Folder
You use the elements in the mime folder to create MIME messages and extract
information from MIME messages.
Function
pub.mime:addBodyPart
pub.mime:addMimeHeader
pub.mime:createMimeData
pub.mime:getBodyPartContent
pub.mime:getBodyPartHeader
pub.mime:getContentType
WmPublic. Returns the value of the ContentType message header from the specied
MIME object.
pub.mime:getEnvelopeStream
pub.mime:getMimeHeader
pub.mime:getNumParts
pub.mime:getPrimaryContentType
pub.mime:getSubContentType
516
Odd Header
MIME Folder
Service
Function
pub.mime:mergeHeaderAndBody
pub.mime:addBodyPart
WmPublic. Adds a body part (header elds and content) to a specied MIME object.
Input Parameters
mimeData
content
isEnvStream
Note: addBodyPart assumes that all data up to the rst blank line
represents the entity's header elds.
no to treat content as an ordinary payload.
mimeHeader
Document Species the part headers that you want to add with
this body part. Key names represent the names of the header
elds. The values of the keys represent the values of the header
elds.
For example, if you wanted to add the following header elds:
X-Doctype: RFQ
X-Severity: 10
517
Even Header
MIME Folder
Value
X-Doctype
RFQ
X-Severity
10
encoding
518
Odd Header
MIME Folder
line-oriented text that you want to encode using the quotedprintable encoding scheme.
multipart
519
Even Header
MIME Folder
no to throw an exception.
Output Parameters
mimeData
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
The way in which the contenype and encoding parameters are applied depends on
whether the nished message is single-part or multipart.
For single-part messages:
contenype species the Content-Type for the entire MIME message. It overrides
any value assigned to the Content-Type header in mimeHeader . If Content-Type is
not specied in contenype or mimeHeader , the value of the Content-Type header
defaults to text/plain.
encoding species the Content-Transfer-Encoding for the entire MIME message.
It overrides any value assigned to the Content-Transfer-Encoding header
in mimeHeader . If Content-Transfer-Encoding is not specied in encoding or
mimeHeader , the value of the Content-Transfer-Encoding header defaults to 7bit.
For multipart messages:
contenype species the Content-Type for an individual body part. The ContentType for the entire MIME message is automatically set to multipart/mixed, or to
multipart/subType if a subtype was specied when the MIME object was created. See
pub.mime:createMimeData.
encoding species the Content-Transfer-Encoding for an individual body part. The
Content-Transfer-Encoding header in mimeHeader , if present, species the encoding
for the entire MIME message. If Content-Transfer-Encoding is not specied in
mimeHeader , or if the specied value is not valid for a multipart message, the value of
520
Odd Header
MIME Folder
the Content-Transfer-Encoding header defaults to 7bit. (7bit, 8bit, and binary are the
only encoding values valid for multipart messages.)
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:getBodyPartContent
pub.mime:addMimeHeader
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:build_SimpleMIME
samples.mime:build_MultipartMIME
pub.mime:addMimeHeader
WmPublic. Adds one or more header elds to a specied MIME object.
Input Parameters
mimeData
mimeHeader
Description
X-Doctype
RFQ
X-Severity
10
521
Even Header
MIME Folder
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
If you add MIME headers before you add multiple body parts, the header elds will
be added to each of the body parts. If you do not want this behavior, either drop
mimeHeader from the pipeline immediately after you execute addMimeHeader, or invoke
addMimeHeader after you've added all body parts to the MIME object.
Be aware that the contenype and encoding parameters used by the pub.mime:addBodyPart
service will override any Content-Type or Content-Transfer-Encoding seings in
mimeData . Moreover, in certain cases, the pub.mime:getEnvelopeStream will override these
seings when it generates a multipart message. For information about how the ContentType or Content-Transfer-Encoding headers are derived at run time, see the Usage
Notes under pub.mime:addBodyPart.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:getMimeHeader
pub.mime:addBodyPart
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:build_SimpleMIME
522
Odd Header
MIME Folder
pub.mime:createMimeData
WmPublic. Creates a MIME object.
If no input parameter is passed to this service, the service creates an empty MIME object.
Otherwise, the service creates a MIME object containing the elements (header elds and
content) from the MIME message in input .
If you are building a MIME message, you use this service to create an empty
MIME object. You populate the empty MIME object with header elds and content,
and then pass it to pub.mime:getEnvelopeStream, which produces the nished MIME
message.
If you are extracting data from a MIME message, you use this service to parse the
original MIME message into a MIME object so that you can extract its header elds
and content using other webMethods services.
Input Parameters
input
mimeHeader
Value
X-Doctype
RFQ
X-Severity
10
523
Even Header
MIME Folder
decodeHeaders
need decoding.
Output Parameters
mimeData
encrypted
stream is in stream ).
signed
stream is in stream ).
524
Odd Header
MIME Folder
certsOnly
stream
Usage Notes
All of the other MIME services operate on the mimeData IData object produced by this
service. They do not operate directly on MIME message streams.
Important: You can examine the contents of mimeData during testing and debugging.
However, because the internal structure of mimeData is subject to change without
notice, do not explicitly set or map data to/from these elements in your service. To
manipulate or access the contents of mimeData , use only the MIME services that
Integration Server provides.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:addMimeHeader
pub.mime:addBodyPart
pub.mime:getMimeHeader
pub.mime:getBodyPartContent
pub.mime:getEnvelopeStream
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:build_SimpleMIME
samples.mime:build_MultipartMIME
samples.mime:extract_SimpleMIME
525
Even Header
MIME Folder
samples.mime:extract_MultipartMIME
pub.mime:getBodyPartContent
WmPublic. Retrieves the content (payload) from the specied MIME object.
You use this service for both single-part and multi-part messages.
To retrieve content from a multi-part message, you set the index (to select the part by
index number) or contentID (to select the part by contentID value) parameter to specify
the body part whose content you want to retrieve. To get the content from a single-part
message, you omit the index and contentID parameters or set index to 0.
Input Parameters
mimeData
index
contentID
Output Parameters
content
encrypted
signed
526
Odd Header
MIME Folder
certsOnly
String Flag whose value indicates whether content is a certsonly MIME message. A value of:
true indicates that content is a certs-only message.
false indicates that content is not a certs-only message.
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
If you omit index or contentID when retrieving content from a multi-part message,
getBodyPartContent returns the payload from the rst body part. If you use index or
contentID to select a body part that does not exist in mimeData , content will be null.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:addBodyPart
pub.mime:getBodyPartHeader
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:extract_SimpleMIME
samples.mime:extract_MultipartMIME
pub.mime:getBodyPartHeader
WmPublic. Returns the list of header elds for the specied body part.
Input Parameters
mimeData
index
527
Even Header
MIME Folder
contentID
decodeHeaders
get Body Part Header would return the following IData object:
Key
Value
Content-Type
text/xml
X-Doctype
RFQ
X-Severity
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
If you omit index or contentID , getBodyPartHeader returns the message headers from the
rst body part. If you use index or contentID to select a body part that does not exist in
mimeData , content will be null.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:addBodyPart
webMethods Integration Server Built-In Services Reference Version 9.6
528
Odd Header
MIME Folder
pub.mime:getMimeHeader
pub.mime:getContentType
WmPublic. Returns the value of the Content-Type message header from the specied
MIME object.
Input Parameters
mimeData
Output Parameters
contentType
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:getSubContentType
pub.mime:getPrimaryContentType
pub.mime:getMimeHeader
pub.mime:getBodyPartHeader
pub.mime:getEnvelopeStream
WmPublic. Generates an InputStream representation of a MIME message from a
specied MIME object.
529
Even Header
MIME Folder
Input Parameters
mimeData
index
String Optional. Index number of the body part for which you
want to generate the MIME message (if you want to generate
the message from a specic body part). The rst body part is
index number zero.
contentID
suppressHeaders
createMultipart
530
Odd Header
MIME Folder
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
If you omit index or contentID , getEnvelopeStream generates the MIME message from the
entire contents of the mimeData . If you use index or contentID to select a body part that
does not exist in mimeData , content will be null.
getEnvelopeStream automatically inserts the MIME-Version and Message-ID message
headers into the MIME message it puts into envStream .
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:addBodyPart
pub.mime:addMimeHeader
Examples
For examples of how to use this service, see the following services in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:build_SimpleMIME
samples.mime:build_MultipartMIME
pub.mime:getMimeHeader
WmPublic. Returns the list of message headers from a specied MIME object.
Input Parameters
mimeData
Output Parameters
mimeHeader
531
Even Header
MIME Folder
Value
Message-ID
<002e01c0f150$6f33010a@sgx.com>
From
"Purch01@GSX.com" <Purch01@GSX.com>
To
<EXPEst@exprint.com>
MIME-Version
1.0
Content-Type
text/xml
X-Doctype
RFQ
X-Severity
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:addMimeHeader
pub.mime:getBodyPartHeader
pub.mime:getNumParts
WmPublic. Returns the number of body parts in the specied MIME object.
532
Odd Header
MIME Folder
Input Parameters
mimeData
Output Parameters
numParts
Usage Notes
This service operates on the MIME object (mimeData ) produced by createMimeData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:getBodyPartContent
pub.mime:addBodyPart
Examples
For examples of how to use this service, see the following service in the certied
samples area of the Knowledge Center on the Empower Product Support Websitehps://
empower.softwareag.com.
samples.mime:extract_MultipartMIME
pub.mime:getPrimaryContentType
WmPublic. Returns the top-level portion of a MIME object's Content-Type value.
Input Parameters
mimeData
Output Parameters
primContentType
533
Even Header
MIME Folder
Content-Type: multipart/mixed
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.mime:createMimeData
pub.mime:getContentType
pub.mime:addMimeHeader
pub.mime:getBodyPartHeader
pub.mime:getSubContentType
WmPublic. Returns the sub-type portion of a MIME object's Content-Type value.
Input Parameters
mimeData
Output Parameters
subContentType
Usage Notes
This service operates on the MIME object (mimeData ) produced by
pub.mime:createMimeData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
534
Odd Header
MIME Folder
See Also
pub.mime:createMimeData
pub.mime:getContentType
pub.mime:addMimeHeader
pub.mime:getBodyPartHeader
pub.mime:mergeHeaderAndBody
WmPublic. Concatenates the contents of the header and body returned by the
pub.client:http service.
You can use this service to reassemble the message into its original form so that it can be
used as input to the pub.mime:createMimeData service (or any other service that requires the
entire hp response as an InputStream).
Input Parameters
headerLines
body
Description
bytes
stream
Output Parameters
stream
535
Even Header
MIME Folder
Usage Notes
Use this service to merge the results produced by pub.client:http to get the original MIME
message.
See Also
pub.client:http
pub.mime:createMimeData
536
Odd Header
OAuth Folder
20 OAuth Folder
Summary of Elements in this Folder .........................................................................................
538
537
Even Header
OAuth Folder
Use the elements in the oauth folder to authorize a client application to access data on
Integration Server using the OAuth 2.0 Authorization Framework.
Client applications use these services to interact with Integration Server when
Integration Server is congured to act as the OAuth authorization server. In this chapter,
authorization server refers to the Integration Server that acts as the authorization server.
For information about conguring Integration Server as the OAuth authorization server,
see webMethods Integration Server Administrators Guide.
Note: Before using these services, you must have already registered the client with the
authorization server and received a client identier. You will use this information to
congure the services in this folder. For information about registering a client, see
webMethods Integration Server Administrators Guide.
pub.oauth:authorize
pub.oauth:getAccessToken
pub.oauth:refreshAccessToken
pub.oauth:authorize
Initiates an authorization request from a client application to the authorization server.
Input Parameters
response_type
538
Odd Header
OAuth Folder
redirect_uri
scope
Output Parameters
None.
Usage Notes
This service must be invoked using HTTPS unless the Require HTTPS seing on the
Security > OAuth > Edit OAuth Global Settings page is disabled.
539
Even Header
OAuth Folder
When you register a client, you must consider the grant type the client should use to
obtain an access token. Integration Server supports the following grant types:
Authorization code. Requires the client to authenticate to the authorization server
before obtaining an access token. The authentication code supplied by the
authorization server is included in the redirection URI. The client can refresh an
expired token. To implement an authorization code grant, set the response_type to
code.
Implicit. Less secure than the authorization code grant. It does not require the client
to authenticate to the authorization server. The authentication server includes the
access token in the redirection URI. The client cannot refresh an expired token. To
implement an implicit grant, set the response_type to token.
Authentication code is not persisted in the cache. If Integration Server is restarted after
the authorization code is issued but before the access token is requested, Integration
Server will reject the request for the access token.
pub.oauth:getAccessToken
Requests an access token from the authorization server.
The authorization server validates the request and generates an access token and a
refresh token (if one is requested). The tokens, along with the client identier, token
expiration interval, and scope are stored in the authorization server's cache.
Input Parameters
grant_type
client_id
code
540
Odd Header
OAuth Folder
redirect_uri
Output Parameters
access_token
token_type
expires_in
refresh_token
Usage Notes
This service is used with authentication code grant ows only.
This service must be invoked using HTTPS unless the Require HTTPS seing on the
Security > OAuth > Edit OAuth Global Settings page is disabled.
Clients must invoke this service via an HTTP POST request.
Condential clients must authenticate requests by supplying their credentials in the
HTTP Authorization header.
Authentication code is not persisted in the cache. If Integration Server is restarted after
the authorization code is issued but before the access token is requested, Integration
Server will reject the request for the access token.
When Integration Server acts as the authorization server, the token_type output
parameter is always Bearer. The authorization server retains the information about the
bearer tokens it issues, including the user information. When the client presents a bearer
token to the resource server, the resource server checks with the authorization server to
see whether the user is allowed to access the requested folders and services.
The tokens, authorization codes, and client information are stored in the authorization
server's caches. By default, these caches maintain up to 1000 elements in memory
and 10000 elements on disk. If the cache size is exceeded, OAuth performance can be
aected on Integration Server and can lead to errors if the disk runs out of space. If you
anticipate that your authorization server's cache will exceed the default size, you should
increase the Maximum Elements In Memory, Maximum Elements On Disk, or Maximum OffHeap seings for Integration Server. For information about changing these seings, see
541
Even Header
OAuth Folder
webMethods Integration Server Administrators Guide. If the cache is distributed, see hp://
ehcache.org/documentation/2.6 for additional considerations when sizing distributed
caches.
pub.oauth:refreshAccessToken
Requests a refresh token from the authorization server. If the authorization server issued
a refresh token to the client with the initial request, the client can use this service to
submit a token refresh request when that initial refresh token expires.
Input Parameters
grant_type
refresh_token
scope
Output Parameters
access_token
token_type
expires_in
refresh_token
542
Odd Header
OAuth Folder
scope
Usage Notes
This service is used with authorization grant ows only.
This service must be invoked using HTTPS unless the Require HTTPS seing on the
Security > OAuth > Edit OAuth Global Settings page is disabled.
Clients must invoke this service via an HTTP POST request.
Condential clients must authenticate requests by supplying their credentials in the
HTTP Authorization header.
When Integration Server acts as the authorization server, the token_type output
parameter is always Bearer. The authorization server retains the information about the
bearer tokens it issues, including the user information. When the client presents a bearer
token to the resource server, the resource server checks with the authorization server to
see whether the user is allowed to access the requested folders and services.
543
Even Header
544
Odd Header
Packages Folder
21 Packages Folder
Summary of Elements in this Folder .........................................................................................
546
545
Even Header
Packages Folder
You use the elements in the packages folder to install, load, and/or alter the status of a
package on the Integration Server.
pub.packages:activatePackage
pub.packages:backupPackage
pub.packages:disablePackage
pub.packages:enablePackage
pub.packages:installPackage
pub.packages:recoverPackage
pub.packages:reloadPackage
pub.packages:activatePackage
WmPublic. Activates (makes available to clients) an inactive package.
You use this service to activate a package that was not activated when it was initially
installed or recovered.
Note: This service activates packages from an inactive state (that is, packages that are
installed on the server but are not registered in the active-package list). To enable a
package that is in a disabled state, you use pub.packages:enablePackage.
546
Odd Header
Packages Folder
Input Parameters
package
Output Parameters
message
Usage Notes
This service will throw an exception if the package specied in package does not exist or
cannot otherwise be activated.
When a package is activated, it is loaded into memory in an enabled state (that is,
activatePackage automatically activates and enables the package.) You do not need to
explicitly enable it with pub.packages:enablePackage.
See Also
pub.packages:enablePackage
pub.packages:installPackage
pub.packages:recoverPackage
pub.packages:backupPackage
WmPublic. Creates a backup copy of a specied package.
Input Parameters
packageName
Output Parameters
None.
Usage Notes
The service creates the backup in a le named packageName .zip, where packageName is
the name of the original package installed in Integration Server. The packageName .zip is
placed in the following directory:
Integration Server_directory\instances\instance_name \replicate\inbound
547
Even Header
Packages Folder
If a package with the same name as the le produced by this service already exists in the
Integration Server_directory\instances\instance_name \replicate\inbound directory, the
service overwrites the existing .zip le with the backup copy that the service creates.
The backed up package is an exact copy of the specied package. Package metadata,
such as creation timestamp, will be the same in the backup as in the original package.
This is unlike package replication or package archiving in which the creation timestamp
reects the time the package was replicated or archived.
pub.packages:disablePackage
WmPublic. Disables a package, thus prohibiting access to the services in the package.
Input Parameters
package
Output Parameters
message
Usage Notes
When a package is disabled, the services in the package are no longer available to the
clients. To re-enable a package that has been disabled, use pub.packages:enablePackage.
Important: Never disable the WmRoot package. Doing so would disable the server.
Be aware that if you disable a package while services in the package are being executed,
those services will most likely fail. disablePackage does not wait for in-progress services to
nish before disabling a package.
This service will throw an exception if the package specied in package does not exist or
cannot otherwise be disabled.
See Also
pub.packages:enablePackage
548
Odd Header
Packages Folder
pub.packages:enablePackage
WmPublic. Enables a package that has been disabled.
Note: This service enables a package that is in a disabled state (that is, a package
that has been disabled through the Integration Server Administrator or the
pub.packages:disablePackage service). To activate a package that is in an inactive state, you
use enablePackage.
Input Parameters
package
Output Parameters
message
String Message from server. (This is the same message that you
receive when you enable a package with the Integration Server
Administrator.)
Usage Notes
When you enable a package, the package is reloaded into memory from disk.
This service will throw an exception if the package specied in package does not exist,
has not been activated, or cannot otherwise be enabled.
See Also
pub.packages:disablePackage
pub.packages:activatePackage
pub.packages:reloadPackage
pub.packages:installPackage
WmPublic. Installs a package that has been published to this server.
Input Parameters
packageFile
549
Even Header
Packages Folder
Output Parameters
message
Usage Notes
If the installed package replaces an existing package on the server,
pub.packages:installPackage will automatically put a backup copy of the existing package in
Integration Server_directory\instances\instance_name \replicate\salvage before it installs
the new package.
550
Odd Header
Packages Folder
This service will throw an exception if the le named in packageFile does not exist or
cannot otherwise be installed correctly.
See Also
pub.packages:activatePackage
pub.packages:recoverPackage
pub.packages:recoverPackage
WmPublic. Recovers a package that exists in the server's salvage directory.
The salvage directory (Integration Server_directory\instances\instance_name \replicate
\salvage) is where the server keeps packages that are deleted with the "safe delete"
option or replaced with newer installed versions.
Input Parameters
package
activateOnRecover
Usage Notes
You can only recover packages that exist in the server's salvage directory.
If you recover a package that is currently installed on the server, the package from the
salvage directory replaces the version that is currently installed. (Be aware that the server
does not retain a copy of the version that it replaces.)
551
Even Header
Packages Folder
This service will throw an exception if the le named in package does not exist in the
server's salvage directory or cannot otherwise be recovered.
See Also
pub.packages:activatePackage
pub.packages:reloadPackage
WmPublic. Loads a new copy of the package into memory from disk.
If you make changes to the service in a package while the server is running, you must
use reloadPackage to put those changes into eect.
Input Parameters
package
Output Parameters
message
Usage Notes
Be aware that if you reload a package while services in the package are being executed,
those services will most likely fail. reloadPackage does not wait for in-progress services to
nish before reloading a package.
This service will throw an exception if the le named in package does not exist or cannot
otherwise be reloaded.
552
Odd Header
PKI Folder
22 PKI Folder
Summary of Elements in this Folder .........................................................................................
554
553
Even Header
PKI Folder
You use the elements in the pki folder to create and verify PKCS#7 signatures with PKI
proles. You also use elements in this folder to create and process S/MIME messages
using PKI proles.
pub.pki.pkcs7:sign
pub.pki.pkcs7:verify
pub.pki.smime.createSignedAndEncryptedData
pub.pki.smime.createSignedData
pub.pki.smime:processEncryptedData
pub.pki.smime:processSignedData
pub.pki.pkcs7:sign
WmPKI. Creates a PKCS7 SignedData object using a PKI prole.
This service enables multiple entities to sign the specied data. Each signerInfo block
contained in the resulting signature contains two authenticated aributes: the content
type and a timestamp.
Note: This service is similar to pub.security.pkcs7:sign except that it uses a PKI prole to
create the PKCS7 SignedData object.
554
Odd Header
PKI Folder
Input Parameters
signerInfo
Description
proleAlias
hashAlgorithm
data
detachedSignature
555
Even Header
PKI Folder
pub.pki.pkcs7:verify
WmPKI. Processes a digital signature to make sure that the provided data has not been
modied.
Note: This service is similar to pub.security.pkcs7:verify except that it uses a PKI prole to
obtain the certicate against which to verify the signer's signature.
Input Parameters
proleAlias
signature
data
detachedSignature
Output Parameters
content
556
Odd Header
PKI Folder
Description
certChain
java.security.cert.X509Certificate[ ] Certicate
chain of the signer. The chain will appear in
hierarchical order, starting with the signer's
X.509 certicate in element 0.
timeStamp
trusted
status
errorMessage
pub.pki.smime.createSignedAndEncryptedData
WmPKI. Digitally signs a MIME message and then encrypts it.
Note: This service is similar to pub.smime:createSignedAndEncryptedData and
pub.smime.keystore:createSignedAndEncryptedData except that a PKI prole is used to provide
signing key and certicate information.
557
Even Header
PKI Folder
Input Parameters
envStream
proleAlias
String PKI prole alias to use to sign the data. This service
retrieves the key from the prole to perform the signing
operation and includes the associated public and CA
certicates in the signature that it generates.
explicit
default.
recipientCerts
encryptionAlg
Default is TripleDES
keyLength
558
Odd Header
PKI Folder
pub.pki.smime.createSignedData
WmPKI. Digitally signs a MIME message using a specied PKI prole.
Note: This service is similar to pub.smime:createSignedData and
pub.smime.keystore:createSignedData except that a PKI prole supplies signing key and
certicate information.
Input Parameters
envStream
proleAlias
explicit
default.
Output Parameters
SMimeEnvStream
pub.pki.smime:processEncryptedData
WmPKI. Decrypts an encrypted S/MIME message using a specied PKI prole.
Note: This service is similar to pub.smime:processEncryptedData and
pub.smime.keystore:processEncryptedData except that a PKI prole supplies signing key and
certicate information.
559
Even Header
PKI Folder
Input Parameters
SMimeEnvStream
proleAlias
Output Parameters
mimeData
contentDigest
String Message digest of the encrypted content, base64encoded. (Some sites return this digest to the sender to
acknowledge their receipt of the message.)
encrypted
signed
certsOnly
entity.
stream
560
Odd Header
PKI Folder
pub.pki.smime:processSignedData
WmPKI. Veries the signature from a signed S/MIME entity using a specied PKI
prole, and then extracts the message from the S/MIME entity.
Note: This service is like pub.smime:processSignedData except that a PKI prole supplies the
certicates against which the signature is veried.
Input Parameters
SMimeEnvStream
proleAlias
signerCertChain
Contents
Signer's certicate
Intermediary CA Certicate
Intermediary CA Certicate
Root CA Certicate
Note: If the signer included the certicate chain with the digital
signature, you do not need to supply signerCertChain .
Output Parameters
mimeData
561
Even Header
PKI Folder
contentDigest
signerCert
encrypted
signed
certsOnly
entity.
stream
verify
562
Odd Header
PKI Folder
errorCode
errorMessage
errorMessage
Untrusted certificate.
Usage Notes
If verify is false, the errorCode and errorMessage values will indicate the error that
caused the failure. Note that errorCode values 5 through 7 do not represent signatureverication failures, and therefore do not cause the verify ag to be set to false.
If the extracted entity is signed or encrypted, mimeData will be empty and the extracted
entity will reside in stream. You can check the state of the signed and encrypted output
variables to determine whether the extracted entity requires additional processing, then
pass stream to the processEncryptedData service as necessary.
See Also
pub.smime:processEncryptedData
pub.smime:createSignedData
pub.smime.keystore:createSignedData
pub.smime.keystore:processEncryptedData
563
Even Header
564
Odd Header
Publish Folder
23 Publish Folder
Summary of Elements in this Folder .........................................................................................
566
565
Even Header
Publish Folder
You use the elements in the publish folder to publish messages to webMethods
Universal Messaging or webMethods Broker. Other Integration Servers subscribe to and
receive these messages using webMethods messaging triggers.
pub.publish:deliver
pub.publish:deliverAndWait
pub.publish:documentResolverSpec
pub.publish:envelope
pub.publish:getRedeliveryCount
pub.publish:publish
pub.publish:publishAndWait
pub.publish:reply
pub.publish:syncToBroker
566
Odd Header
Publish Folder
Element
pub.publish:waitForReply
pub.publish.notification:error
pub.publish:deliver
WmPublic. Delivers a document to a specic destination.
Note: The pub.publish:deliver service can be used to publish a document to webMethods
Broker only.
Input Parameters
documentTypeName
document
destId
567
Even Header
Publish Folder
delayUntilServiceSuccess
executes successfully.
Output Parameters
None.
Usage Notes
You can use the pub.publish:deliver service to deliver a document to a client on the Broker.
You cannot use pub.publish:deliver with Universal Messaging.
To view a list of client IDs on the Broker, use the Broker user interface within My
webMethods or use Designer to test the publishable document type that you want to
deliver.
For more information about how the Integration Server and Broker deliver documents
and for information about building a service that delivers a document, see the PublishSubscribe Developers Guide.
If outbound client-side queuing is disabled (the wa.server.publish.useCSQ property is
set to "never"), Integration Server throws a ServiceException if the Broker is not available
when this service executes. Make sure to code your service to handle this situation.
See Also
pub.publish:publish
pub.publish:deliverAndWait
pub.publish:envelope
pub.publish:deliverAndWait
WmPublic. Requests a reply document from a specic client. The service waits for the
reply or indicates that the pub.publish:waitForReply service should retrieve the reply later.
Note: The pub.publish:deliverAndWait can be used to publish a document to webMethods
Broker only.
568
Odd Header
Publish Folder
Input Parameters
documentTypeName
document
receiveDocumentType
Name
destId
waitTime
async
569
Even Header
Publish Folder
tag
The service produces a tag output value only when the async
eld is set to true. The tag value is required input when using
the pub.publish:waitForReply service to retrieve the reply.
Note: The tag output value is the same value that the Integration
Server places in the tag eld of the request document's envelope.
Usage Notes
You can use the pub.publish:deliverAndWait service to publish a document to the Broker. You
cannot use pub.publish:deliverAndWait with Universal Messaging
You can use the pub.publish:deliverAndWait service to initiate and continue a private
conversation between two webMethods Broker clients. This is a variation of the request/
reply model. One client executes a service that delivers a document to a specic client.
This document requests information from the receiving client.
In a synchronous request/reply, the delivering service stops executing while it
waits for a response. When the service receives a reply document from the specied
client, the servers resumes executing. If the waitTime elapses before the service
receives a reply, the Integration Server ends the request, and the service returns a
null document indicating that the request timed out. The Integration Server then
executes the next step in the ow service. If a reply document arrives after the ow
service resumes execution, the Integration Server rejects the document and creates
a journal log message stating that the document was rejected because there is no
service thread waiting for the document.
In an asynchronous request/reply, the delivering service continues executing
the steps in the service after publishing the document. To retrieve the reply,
the delivering service must invoke the pub.publish:waitForReply service. If the wait
time elapses before the pub.publish:waitForReply service receives a document, the
pub.publish:waitForReply service returns a null document indicating that the request
timed out.
570
Odd Header
Publish Folder
A service that contains multiple asynchronous deliver requests allows the service to
deliver all the requests before collecting the replies. This approach can be more ecient
than delivering a request, waiting for a reply, and then delivering the next request.
If you create a service that contains multiple asynchronous requests, make sure
to link the tag output to another eld in the pipeline. Each asynchronous delivery
produces a tag eld in the pipeline. If the tag eld is not linked to another eld, the next
asynchronous delivery request (that is, the next execution of the pub.publish:deliverAndWait
service) will overwrite the rst tag value.
To view a list of client IDs on the webMethods Broker, use the webMethods Broker user
interface or use Designer to test the publishable document type that you want to deliver.
Use pub.publish:deliverAndWait if you need to know that a specic client successfully
received and processed the request document.
For more information about how to build a services that initiate synchronous or
asynchronous request/reply scenarios, see the Publish-Subscribe Developers Guide.
If outbound client-side queuing is disabled (the wa.server.publish.useCSQ property is
set to "never"), Integration Server throws a ServiceException if the webMethods Broker
is not available when this service executes. Make sure to code your service to handle this
situation.
See Also
pub.publish:waitForReply
pub.publish:publishAndWait
pub.publish:reply
pub.publish:envelope
pub.publish:documentResolverSpec
WmPublic. Specication for the signature of a service that determines whether a
document's status is New, Duplicate, or In Doubt.
Input Parameters
documentTypeName
redeliveryCount
uuid
571
Even Header
Publish Folder
document
transport
triggerName
Output Parameters
status
Usage Notes
The pub.publish:documentResolverSpec must be used as the signature for any service used to
resolve the processing status of a document. For information about building a document
resolver service and enabling exactly once processing for a webMethods messaging
trigger, see the Publish-Subscribe Developers Guide.
Use the pub.jms:documentResolverSpec as the signature for a document resolver service used
to determine the status of a JMS message received by a JMS trigger.
572
Odd Header
Publish Folder
See Also
pub.jms:documentResolverSpec
pub.publish:envelope
WmPublic. Document type that denes the content and structure of the envelope that
accompanies a published document.
The envelope records information such as the sender's address, the time the document
was sent, password and certicate information, and other useful information for routing
and control. Every publishable document type contains a document reference to this
document type.
Read/Write Parameters
You can set the following parameters within your service. Broker supports all of the
read/write parameters. However, webMethods Universal Messaging supports only
activation , businessContext , and priority . Universal Messaging ignores the values of any
other read/write parameters set in the document envelope and passes them through to
subscribers.
activation
appLastSeqn
appPassword
appSeqn
573
Even Header
Publish Folder
appUserName
String Optional. The user name for logging into the application
that processes the document. Use the appPassword eld to
specify the password for this user name.
businessContext
controlLabel
errorsTo
errorRequestsTo
locale
maxResults
priority
replyTo
574
Odd Header
Publish Folder
runLevel
signature
signatureType
startResult
tag
trackId
transactionId
transformState
Read-only Parameters
webMethods Universal Messaging, webMethods Broker, or Integration Server set the
following parameters. You cannot set these parameters within your service, but you can
retrieve their values from published documents.
Note: Of the read-only parameters listed below, webMethods Universal Messaging
supports the uuid and recvTime parameters only.
age
575
Even Header
Publish Folder
destId
enqueueTime
logBroker
logHost
pubDistinguishedName
576
Odd Header
Publish Folder
pubNetAddr
pubSeqn
pubLabel
recvTime
route
Description
broker
recvTime
577
Even Header
Publish Folder
uuid
Output Parameters
None.
Usage Notes
For more information about seing and using a document's envelope parameters, see
webMethods Broker Java Client API Reference, webMethods Broker Client C API Programmers
Guide, and Publish-Subscribe Developers Guide.
See Also
pub.publish:deliver
pub.publish:deliverAndWait
pub.publish:publish
pub.publish:publishAndWait
pub.publish:publishAndWait
pub.publish.notification:error
pub.publish:getRedeliveryCount
WmPublic. Retrieves the redelivery count for a document.
The redelivery count indicates the number of times the document has been redelivered
to the trigger queue on the Integration Server. A document is redelivered to a trigger
queue if the Integration Server shuts down before processing and acknowledging the
document.
Input Parameters
None.
578
Odd Header
Publish Folder
Output Parameters
redeliveryCount
Indicates...
-1
> 0
Usage Notes
If you do not want to use the exactly once processing capabilities, you can invoke the
pub.publish:getRedeliveryCount service within your trigger service. The redelivery count for a
document can provide an initial indication of whether the Integration Server has already
processed the document.
Integration Server retrieves the redelivery count for the document currently maintained
in the invoke state. That is, the Integration Server retrieves the redelivery count for the
document that caused the trigger service to execute.
When a trigger service satised by an All (AND) join condition invokes
pub.publish:getRedliveryCount, the pub.publish:getRedeliveryCount service returns the redelivery
count for the last document received by the join. For example, suppose that documents
A and B satised an All (AND) join condition. If the Integration Server receives
document A rst and document B second, when pub.publish:getRedliveryCount executes, it
retrieves the redelivery count for document B.
579
Even Header
Publish Folder
pub.publish:publish
WmPublic. Publishes a document locally or to the messaging provider.
This service broadcasts the document (that is, distributes the document to all clients that
subscribe to it).
Input Parameters
documentTypeName
document
local
580
Odd Header
Publish Folder
581
Even Header
Publish Folder
Integration Server writes a message to the journal log whenever it rejects or discards a
document.
For a Universal Messaging connection alias the Publish Wait Time While Reconnecting value
species the number of milliseconds that a publishing service using alias will wait for a
connection to the Universal Messaging server to be re-established after the connection
fails. If Integration Server re-establishes the connection before the Publish Wait Time
While Reconnecting elapses, the publishing service continues executing. If the specied
time elapses before a connection is re-established, the publishing service ends with an
ISRuntimeException. Make sure to code your service to handle this situation.
If the pub.publish:publish services publishes a document to Broker and outbound clientside queuing is disabled (the wa.server.publish.useCSQ property is set to "never"),
Integration Server issues a ServiceException if the Broker is not available when the
service executes. Make sure to code your service to handle this situation.
If the pub.publish:publish services publishes a document to Universal Messaging and
use of the client side queue is disabled for the Universal Messaging connection alias,
Integration Server throws an ISRuntimeException if the Universal Messaging server is
not available when the service executes. Make sure to code your service to handle this
situation.
Integration Server issues a ServiceException when the dispatcher is shut down during
the execution of this service. In this situation, Integration Server does not save the data
in the outbound document store (client side queue), and the document will not appear
in the outbound document store. Make sure to code your service to handle this situation.
For more information about building a service that publishes a document locally or to a
messaging provider, see the Publish-Subscribe Developers Guide.
See Also
pub.publish:deliver
pub.publish:publishAndWait
pub.publish:envelope
pub.publish:publishAndWait
WmPublic. Broadcasts a request for a document from any client subscribed to a specic
document type. The service waits for the reply or indicates that the pub.publish:waitForReply
service should retrieve the reply later.
Note: This service can be used to publish a document to webMethods Broker or locally
only.
582
Odd Header
Publish Folder
Input Parameters
documentTypeName
document
receiveDocumentType
Name
local
async
583
Even Header
Publish Folder
tag
status
584
Odd Header
Publish Folder
585
Even Header
Publish Folder
A service that contains multiple asynchronous publish and wait invocations allows the
service to publish all the requests before collecting the replies. This approach can be
more ecient than publishing a request, waiting for a reply, and then publishing the
next request.
If you create a service that contains multiple asynchronous requests, make sure to
link the tag output to another eld in the pipeline. Each asynchronously published
request produces a tag eld in the pipeline. If the tag eld is not linked to another
eld, the next asynchronously published request (that is, the next execution of the
pub.publish:publishAndWait service) will overwrite the rst tag value.
For more information about building a service that follows the request/reply model, see
the Publish-Subscribe Developers Guide.
If outbound client-side queuing is disabled (the watt.server.publish.useCSQ
property is set to "never"), Integration Server throws a ServiceException if the
webMethods Broker is not available when this service executes. Make sure to code your
service to handle this situation.
See Also
pub.publish:waitForReply
pub.publish:reply
pub.publish:envelope
pub.publish:reply
WmPublic. Delivers a reply document to the requesting client.
If the replyTo envelope parameter is set, the reply document is delivered to that
destination; otherwise, the reply document is sent to the client ID of the publisher
specied in the envelope's pubId eld. This service also correctly maps the required
elds from the request document to the reply document.
Note: All reply documents are volatile documents. If the requesting Integration Server
shuts down before processing the reply document, the reply document is lost.
Note: This service can be used to send a reply document via webMethods Broker or
locally within the Integration Server
Input Parameters
receivedDocumentEnvelope
586
Odd Header
Publish Folder
document
delayUntilServiceSuccess
Output Parameters
None.
Usage Notes
You can use the pub.publish:reply service to publish a document locally or to the Broker.
You cannot use pub.publish:reply with Universal Messaging
A reply document can be a simple acknowledgment, or it can contain information asked
for by the publisher of the request document.
If you are building a service to reply to documents that meet join conditions, keep the
following in mind:
All (AND) join conditions. If the replying service executes because two or more
documents satised an All (AND) join condition, the Integration Server uses the
envelope of the last document that satised the join condition to determine where to
send the reply document. If you want the Integration Server to use the envelope of a
dierent document, link the envelope of that document to receivedDocumentEnvelope .
If you want to reply to all documents received as part of an All (AND) join, invoke
587
Even Header
Publish Folder
pub.publish:reply once for each document received and map the envelope from the
received document to receivedDocumentEnvelope for each call.
Any (OR) or Only one (XOR) join conditions. If the replying service executes because
a document satised an Any (OR) or Only one (XOR) join condition, do not map
or assign a value to receivedDocumentEnvelope . It is impossible to know which
document in the Any (OR) or Only one (XOR) join will be received rst. For
example, suppose that an Only one (XOR) join condition specied document types
A and B. The Integration Server uses the envelope of the document it received rst
as the receivedDocumentEnvelope value. If you map the envelope of document A to
receivedDocumentEnvelope , but the Integration Server receives document B rst, your
replying service will fail.
Important: Services that publish or deliver a document and wait for a reply can
specify a publishable document type to which reply documents must conform. If
the reply document is not of the type specied in the receiveDocumentTypeName
parameter of the pub.publish:publishAndWait or pub.publish:deliverAndWait service, the
publishing service will wait forever for a reply. Work closely with the developer of
the publishing service to make sure that your reply document is an instance of the
correct publishable document type.
For more information about building a reply service, see the Publish-Subscribe Developers
Guide.
See Also
pub.publish:deliverAndWait
pub.publish:publishAndWait
pub.publish:envelope
pub.publish:syncToBroker
WmPublic. Synchronizes one or more publishable document types with their associated
provider denition by pushing the publishable document types to the associated
message provider.
Note: This service can be used to synchronize publishable document types with the
corresponding Broker document types on webMethods Broker only.
Input Parameters
documentTypes
588
Odd Header
Publish Folder
Output Parameters
successfulPDTs
unsuccessfulPDTs
errors
warnings
Usage Notes
You can use pub.publish:syncToBroker as a start up service for a package to avoid using
Software AG Designer to synchronize document types.
You can use the pub.publish:syncToBroker service with Broker only. The use of
pub.publish:syncToBroker with Universal Messaging is not supported. Use Designer to
synchronize publishable document types with corresponding provider denitions
(channels) on Universal Messaging.
The Connection alias name property for a document type species the messaging
connection alias assigned to the document type which indicates the provider to which a
document type will be pushed.
If the documentTypes parameter contains document types that are not publishable or do
not exist, Integration Server lists the errors in the errors parameter.
pub.publish:waitForReply
WmPublic. Retrieves the reply for an asynchronous request. If a reply is not available,
the Integration Server continues to wait for the document until the time specied in
the waitTime parameter of the pub.publish:deliverAndWait or pub.publish:publishAndWait service
elapses.
589
Even Header
Publish Folder
Input Parameters
String A unique identier for the publish request for which you
are retrieving a reply. Integration Server uses the tag value
to match the request document with its corresponding reply
document.
tag
Output Parameters
receivedDocument
Usage Notes
The waitTime value of the publishing service species how long Integration Server
will keep the request open while waiting for a reply. When building an asynchronous
request/reply service, keep the following information about the waitTime in mind:
The waiting interval for the reply document starts when Integration Server executes
the request service (pub.publish:deliverAndWait or pub.publish:publishAndWait). The execution
of the pub.publish:waitForReply service does not aect the waitTime interval.
If the waitTime interval elapses before the pub.publish:waitForReply service executes, the
service immediately returns a null document which indicates that the wait time has
expired.
If Integration Server has not received the reply when the pub.publish:waitForReply
service executes, the service waits the remainder of the waitTime interval. If
Integration Server does not receive a reply by the time the waitTime interval elapses,
the request completes. The service returns a null document which indicates that the
wait time has expired.
If the reply document arrives after the waitTime interval elapses, Integration Server
rejects the document because the request is closed.
A single publish and wait request might receive many response documents. Integration
Server that made the publish and wait request uses only the rst reply document it
receives from the webMethods Broker. The Integration Server discards all other replies.
First is arbitrarily dened. There is no guarantee provided for the order in which the
webMethods Broker processes incoming replies. If you need a reply document from a
specic client, use the pub.publish:deliverAndWait service instead.
590
Odd Header
Publish Folder
For more information about building an asynchronous request/reply service, see the
Publish-Subscribe Developers Guide.
See Also
pub.publish:deliverAndWait
pub.publish:publishAndWait
pub.publish.notification:error
WmPublic. Publishable document type that denes the document that Integration Server
generates and delivers when a trigger encounters an error or exception condition during
processing.
Note: Integration Server does not generate and return and error message when the
trigger received a document from Universal Messaging.
Integration Server generates an error document if the trigger service cannot successfully
process a document for one of the following reasons:
The trigger service encounters an exception condition (that is not an
ISRuntimeException) during execution.
Integration Server makes the maximum number of aempts to re-execute the trigger
service and the service still fails because of a transient error condition.
Some other system exception occurred.
Note: Integration Server does not generate an error document if the subscribing
trigger is part of a disabled process model version because the trigger service
associated with a disabled process model version never executes.
Integration Server delivers the error document to the client ID specied in the errorsTo
eld contained in the received document's envelope. If the errorsTo eld is empty, the
Integration Server delivers the error document to the original document's publisher (as
specied in the pubId envelope eld). The error document noties the publisher or other
designated recipient that the subscriber cannot process the document successfully.
Note: If a trigger service cannot process a locally published document successfully,
Integration Server produces and delivers an error document only if the Integration
Server is connected to a webMethods Broker.
Parameters
adapterType
591
Even Header
Publish Folder
errorCategory
errorText
eventID
_env
Usage Notes
The client to which Integration Server delivers the error document needs to subscribe
to the pub.publish.notification:error document type. If the client does not have a trigger that
subscribes to this document type, the client will never receive or process the error
document. If the client receiving the error document is an Integration Server, it generates
the message [ISS.0098.0024V2] No trigger available for incoming Document
pub.publish.notification:error.
See Also
pub.publish:envelope
592
Odd Header
Remote Folder
24 Remote Folder
Summary of Elements in this Folder .........................................................................................
594
593
Even Header
Remote Folder
You use the elements in the remote folder to invoke services on other webMethods
Integration Server.
You can also use remote services for guaranteed delivery transactions. For more
information about guaranteed delivery transactions, see the Guaranteed Delivery
Developers Guide and webMethods Integration Server Administrators Guide.
pub.remote:invoke
pub.remote.gd:end
pub.remote.gd:getStatus
pub.remote.gd:invoke
pub.remote.gd:restart
pub.remote.gd:retrieve
pub.remote.gd:send
WmPublic. Makes a guaranteed one-way call (reand-forget) to the webMethods Integration Server
to invoke a service for which no output is needed or
expected.
pub.remote.gd:start
pub.remote.gd:submit
594
Odd Header
Remote Folder
pub.remote:invoke
WmPublic. Invokes a service on a remote webMethods Integration Server.
The remote server is identied by an alias, which is congured on the Remote Servers tab
in the Integration Server Administrator. Connection and authentication to the remote
server is managed transparently to the caller of this service.
All current pipeline inputs are passed to the remote service. To improve performance
and minimize the amount of data sent over the wire, scope the pipeline to a separate
document or drop unneeded elds before invoking this service. The same advice applies
to the output values of the remote service because all values returned from the service
are sent over the wire in response to the caller.
Input Parameters
$alias
$service
$scope
String Flag that species how the session to the remote server
should be managed. Set to:
SESSION to store the remote session in the current user
595
Even Header
Remote Folder
the default.
$clusterRetry
596
Odd Header
Remote Folder
Output Parameters
Returns the output of the invoked service. The output signature matches the output
signature of the invoked service.
Usage Notes
If pub.remote:invoke does not receive a response within the timeout period specied
in the server's watt.net.timeout parameter, it will throw an exception. For
information about the watt.net.timeout parameter, see webMethods Integration Server
Administrators Guide.
pub.remote.gd:end
WmPublic. Ends a guaranteed delivery transaction.
Input Parameters
tid
Output Parameters
None.
Usage Notes
This service is used to eliminate a guaranteed delivery transaction from the jobstore.
pub.remote.gd:getStatus
WmPublic. Returns the status of the guaranteed delivery transaction.
Input Parameters
tid
Output Parameters
status
597
Even Header
Remote Folder
pub.remote.gd:invoke
WmPublic. Invokes the service for a guaranteed delivery transaction by making a
synchronous call to a remote webMethods Integration Server.
Input Parameters
service
tid
inputs
Output Parameters
results
Usage Notes
To use an asynchronous call to the server to invoke a service for a guaranteed delivery
transaction, use the pub.remote.gd:submit service.
If the remote server does not respond within the timeout limit specied in this server's
watt.net.timeout seing, the Integration Server treats it as a failed aempt and retries
the request.
598
Odd Header
Remote Folder
pub.remote.gd:restart
WmPublic. Restarts an expired guaranteed delivery transaction.
Input Parameters
tid
Output Parameters
None.
Usage Notes
If a guaranteed delivery transaction failed because of server or network failure, use this
service to restart the transaction without resubmiing it.
pub.remote.gd:retrieve
WmPublic. Retrieves the results of a guaranteed delivery transaction submied
asynchronously or synchronously to a remote webMethods Integration Server.
Input Parameters
tid
block
599
Even Header
Remote Folder
Usage Notes
If block is false, and the results of the transaction are still pending when this service
executes, the results are returned as null.
pub.remote.gd:send
WmPublic. Makes a guaranteed one-way call (re-and-forget) to the webMethods
Integration Server to invoke a service for which no output is needed or expected.
Input Parameters
service
tid
inputs
Output Parameters
None.
Usage Notes
The results of the service specied in service cannot be retrieved. However, errors that
occur will be logged when the guaranteed delivery transaction ends.
Use the pub.remote.gd:send service to invoke a service remotely only if you want to run a
guaranteed delivery transaction and are not concerned about the results of the invoked
service. After pub.remote.gd:send completes the call, the service ends the transaction;
therefore, you do not need to use the pub.remote.gd:end service to end the transaction.
pub.remote.gd:start
WmPublic. Starts a guaranteed delivery transaction.
Input Parameters
alias
600
Odd Header
Remote Folder
retries
followtid
Output Parameters
tid
pub.remote.gd:submit
WmPublic. Invokes a service for a guaranteed delivery transaction by making an
asynchronous call to a remote webMethods Integration Server.
Input Parameters
service
tid
inputs
Output Parameters
None.
Usage Notes
To remove the transaction from the remote webMethods Integration Server, use the
pub.remote.gd:end service.
To use a synchronous call to invoke the service, use the pub.remote.gd:invoke service.
601
Even Header
602
Odd Header
Replicator Folder
25 Replicator Folder
Summary of Elements in this Folder .........................................................................................
604
603
Even Header
Replicator Folder
You use the elements in the replicator folder to replicate packages across webMethods
Integration Servers. This folder contains services that you can use to push packages
from your webMethods Integration Servers to a subscriber's server. It also contains
services that you can use to pull packages from a publisher's server to your webMethods
Integration Server.
pub.replicator:addReleaseRegistryEntry
pub.replicator:deleteReleaseRegistryEntry
pub.replicator:distributeViaFTP
pub.replicator:distributeViaSvcPull
pub.replicator:distributeViaSvcPush
pub.replicator:generateReplicationEvent
pub.replicator:getLocalReleasedList
pub.replicator:getRemoteReleasedList
pub.replicator:notifyPackageRelease
604
Odd Header
Replicator Folder
Element
pub.replicator:packageCreation
pub.replicator:addReleaseRegistryEntry
WmPublic. Adds an entry to the webMethods Integration Server's Package Release
Registry.
Input Parameters
package
name
version
build
patchNums
JVMVersion
description
Output Parameters
packages
Description
605
Even Header
Replicator Folder
name
version
build
patch_nums
time
jvm_version
description
source_server_version
Usage Notes
Before using this service, use pub.replicator:packageCreation to create a package zip le in the
server's outbound directory. When you use addReleaseRegistryEntry to add an entry to the
Package Release Registry, the package name you specify in package should match the
package name you specied in pub.replicator:packageCreation.
pub.replicator:deleteReleaseRegistryEntry
WmPublic. Deletes an entry from the webMethods Integration Server's Package Release
Registry.
Input Parameters
packageName
606
Odd Header
Replicator Folder
Output Parameters
packages
Description
name
version
build
patch_nums
time
jvm_version
description
source_server_version
pub.replicator:distributeViaFTP
WmPublic. Allows a publisher to send a package to a subscriber via FTP or allows a
subscriber to retrieve a package from a publisher via FTP.
Input Parameters
packageName
607
Even Header
Replicator Folder
action
the default.
serverhost
serverport
username
String User name that your server will use to log on to the
remote Integration Server.
password
Output Parameters
None.
pub.replicator:distributeViaSvcPull
WmPublic. Pulls a specied package release from a publisher's server.
Input Parameters
packageName
publisher
Output Parameters
None.
608
Odd Header
Replicator Folder
pub.replicator:distributeViaSvcPush
WmPublic. Pushes a package from your server to a list of subscribers (other
webMethods Integration Servers).
Input Parameters
packageName
subscriber
Output Parameters
None.
pub.replicator:generateReplicationEvent
WmPublic. Generates a replication event.
You might invoke this service in conjunction with other services to make the package
replication process generate an event. The replication event handler would listen for this
event and perform some prescribed action that you have specied.
Input Parameters
packageName
action
Output Parameters
None.
pub.replicator:getLocalReleasedList
WmPublic. Returns all entries in your webMethods Integration Server's Package Release
Registry.
Input Parameters
None.
609
Even Header
Replicator Folder
Output Parameters
packages
Description
name
version
build
patch_nums
time
jvm_version
description
source_server_version
pub.replicator:getRemoteReleasedList
WmPublic. Queries the publisher for released packages.
This service gets a list of released packages to which your server subscribes. You can use
the list to nd out if any new packages, or newer versions of existing packages, have
been released.
610
Odd Header
Replicator Folder
Input Parameters
publisher
Output Parameters
packages
Description
name
version
build
patch_nums
time
jvm_version
description
source_server_version
pub.replicator:notifyPackageRelease
WmPublic. Sends an e-mail message to subscribers who have said that they want to be
notied when a new release becomes available.
611
Even Header
Replicator Folder
Input Parameters
packageName
Output Parameters
None.
pub.replicator:packageCreation
WmPublic. Creates a distribution le (a zip le) for the package.
Input Parameters
package
name
version
build
patchNums
targetPkgVersion
targetServerVersion
JVMVersion
description
type
612
Odd Header
Replicator Folder
lter
le.
leList
leNamePaern
lesToDeleteList
Output Parameters
$result
Usage Notes
After you use packageCreation to create the package, use pub.replicator:addReleaseRegistryEntry
to add an entry to the Package Release Registry. The package name you
specify in packageCreation should match the package name you specify in
pub.replicator:addReleaseRegistryEntry.
613
Even Header
614
Odd Header
Report Folder
26 Report Folder
Summary of Elements in this Folder .........................................................................................
616
615
Even Header
Report Folder
You use the elements in the report folder to apply an output template to an IData object.
The services can be used in order to generate any type of dynamic XML, EDI, or HTML
document.
pub.report:runFileTemplate
pub.report:runFileTemplateOnPipe
pub.report:runStringTemplate
pub.report:runStringTemplateOnPipe
pub.report:runTemplate
pub.report:runTemplateOnPipe
pub.report:runFileTemplate
WmPublic. Applies a template le to a document (IData object).
Input Parameters
$template
$values
leEncoding
616
Odd Header
Report Folder
Output Parameters
$txt
Usage Notes
If a template is not available in a templates directory of any of the packages on the
server, you can use this service by passing in a File object representing the template.
pub.report:runFileTemplateOnPipe
WmPublic. Applies a template to the pipeline.
Input Parameters
$template
leEncoding
Output Parameters
$txt
Usage Notes
If a template is not available in a templates directory of any of the packages on the
server, you can use this service to pass a File object representing the template le.
pub.report:runStringTemplate
WmPublic. Applies an output template to a specied document (IData object).
Input Parameters
$template
$values
617
Even Header
Report Folder
Output Parameters
$txt
Usage Notes
This service is typically invoked from other services that already have a template in a
String object and an IData object that will be used to bind against the template.
pub.report:runStringTemplateOnPipe
WmPublic. Applies a template to the pipeline.
Input Parameters
$template
Output Parameters
$txt
Usage Notes
This service is typically invoked from other services that already have a template in a
String object and need the template to bind against the pipeline.
pub.report:runTemplate
WmPublic. Applies a template in a le to a specied document (IData object).
Input Parameters
$template
$package
$values
618
Odd Header
Report Folder
leEncoding
Output Parameters
$txt
Usage Notes
The service locates the output template by its le name and the name of the package in
which it resides. To apply a template that resides in IntegrationServer_directory \packages
\Default\templates\mytemp.xml, invoke the service with the following values.
$template : mytemp.xml
$package : Default
pub.report:runTemplateOnPipe
WmPublic. Applies a template in a le to the pipeline.
Input Parameters
$template
$package
leEncoding
Output Parameters
$txt
Usage Notes
The service locates the output template by its le name and the name of the
package in which it resides. For example, to apply a template that resides in
webMethods Integration Server Built-In Services Reference Version 9.6
619
Even Header
Report Folder
620
Odd Header
Scheduler Folder
27 Scheduler Folder
Summary of Elements in this Folder .........................................................................................
622
621
Even Header
Scheduler Folder
You use the elements in the scheduler folder to execute services at the times you specify.
Services that you schedule are referred to as user tasks or just tasks. The Scheduler feature
on the webMethods Integration Server handles execution of the tasks.
pub.scheduler:addComplexTask
pub.scheduler:addOneTimeTask
pub.scheduler:addRepeatingTask
pub.scheduler:cancelTask
pub.scheduler:getTaskIDs
pub.scheduler:getTaskInfo
pub.scheduler:getUserTaskList
pub.scheduler:migrateTasksToJDBC
pub.scheduler:resumeTask
pub.scheduler:suspendTask
pub.scheduler:updateComplexTask
622
Odd Header
Scheduler Folder
Element
pub.scheduler:updateOneTimeTask
pub.scheduler:updateRepeatingTask
pub.scheduler:addComplexTask
WmPublic. Adds a complex task to the Scheduler.
The webMethods Integration Server runs the service for a complex task on the day(s)
and time(s) that you specify either during a specied date range or indenitely.
Input Parameters
service
description
target
623
Even Header
Scheduler Folder
lateness
latenessAction
runAsUser
inputs
startTime
624
Odd Header
Scheduler Folder
startDate
endTime
endDate
months
hours
minutes
daysOfMonth
daysOfWeek
Output Parameters
taskID
type
String Code indicating the type of task added. For this type of
task, the value of type will be complex.
taskAdded
625
Even Header
Scheduler Folder
pub.scheduler:addOneTimeTask
WmPublic. Adds a task that runs only once to the Scheduler.
The Integration Server executes the service a single time on the date and time you
specify.
Input Parameters
service
description
target
626
Odd Header
Scheduler Folder
lateness
latenessAction
runAsUser
inputs
date
time
627
Even Header
Scheduler Folder
Output Parameters
taskID
type
String Code indicating the type of task added. For this type of
task, the value of type will be once.
taskAdded
pub.scheduler:addRepeatingTask
WmPublic. Adds a recurring task to the Scheduler.
The webMethods Integration Server continually executes a repeating task at the interval
you specify.
Input Parameters
service
description
target
628
Odd Header
Scheduler Folder
lateness
latenessAction
runAsUser
inputs
629
Even Header
Scheduler Folder
startDate
endTime
endDate
interval
doNotOverlap
The Scheduler runs the task every time the value of interval
elapses. This is the default.
Output Parameters
taskID
type
String Code indicating the type of task added. For this type of
task, the value of type will be repeat.
taskAdded
630
Odd Header
Scheduler Folder
pub.scheduler:cancelTask
WmPublic. Removes a task from the Scheduler.
Input Parameters
taskID
Output Parameters
taskCancelled
Usage Notes
For information about the tasks on the Scheduler, run the pub.scheduler:getTaskIDs and
pub.scheduler:getTaskInfo services.
pub.scheduler:getTaskIDs
WmPublic. Retrieves a list of identication numbers for tasks currently in the Scheduler.
631
Even Header
Scheduler Folder
Input Parameters
running
String Species whether the service returns task IDs for all
tasks or just tasks that are running. If you specify false (the
default), the service returns task IDs for all tasks. If you specify
true, the service returns task IDs for just those tasks with the
status running.
Output Parameters
taskIDs
pub.scheduler:getTaskInfo
WmPublic. Retrieves information about a task on the Scheduler.
Input Parameters
taskID
Output Parameters
type
runAsUser
String The user ID whose access rights are used to execute the
service.
target
632
Odd Header
Scheduler Folder
lateness
latenessAction
633
Even Header
Scheduler Folder
nextRun
String Next date and time that the task is scheduled to run. The
date and time is expressed as the number of milliseconds from
January 1, 1970, 00:00:00 GMT.
execState
Indicates that...
For tasks that are scheduled to run on all servers in the cluster,
you might see dierent statuses among the parent and child
tasks. For example, the parent's status might be Active, while
one child's status is Active, and another child's status is
Suspended.
In general, the status of the parent task will be Active if at least
one child task is active or running, Suspended if all child tasks
are suspended, or Expired, if all child tasks are expired.
inputs
oneTimeTaskInfo
Description
date
634
Odd Header
Scheduler Folder
time
repeatingTaskInfo
complexTaskInfo
Description
interval
doNotOverlap
Description
startDate
startTime
endDate
endTime
minutes
hours
635
Even Header
Scheduler Folder
months
daysOfWeek
daysOfMonth
pub.scheduler:getUserTaskList
WmPublic. Returns a list of scheduled user tasks.
Input Parameters
None.
Output Parameters
tasks
extTasks
pub.scheduler:migrateTasksToJDBC
WmPublic. Migrates scheduled user tasks from the Integration Server embedded
database to an external database.
Integration Server stores information about certicate maps and scheduled jobs in
a database that is associated with the ISInternal functional alias. When you install
Integration Server, you can select whether this database will exist as an embedded
database that is shipped with Integration Server, or an external RDBMS that you set
up. If you chose to use the embedded database at install time, but later want to use an
external RDBMS instead, you can use the pub.scheduler:migrateTasksToJDBC service to copy
636
Odd Header
Scheduler Folder
or move information about user scheduled tasks from the embedded database to the
external RDBMS.
Input Parameters
move
Output Parameters
numberOfTaskMigrated
successful
Usage Notes
This service copies scheduled user tasks only; it does not copy or move information
about certicate maps.
Before running this service you must install the external IS Internal database component
and dene a database connection for it. For instructions, refer to Installing webMethods
and Intelligent Business Operations Products.
When you run the service, it looks in the embedded database for scheduled user tasks
and writes any tasks it nds to the database identied by the ISInternal functional
alias, which is dened on the Settings > JDBC Pools screen of the Integration Server
Administrator.
pub.scheduler:resumeTask
WmPublic. Resumes a suspended task.
Input Parameters
taskID
637
Even Header
Scheduler Folder
pub.scheduler:suspendTask
WmPublic. Suspends a task on the Scheduler.
Input Parameters
taskID
Output Parameters
taskSuspended
638
Odd Header
Scheduler Folder
Usage Notes
If you want to cancel a task or remove a task from the scheduler, use the
pub.scheduler:cancelTask service.
pub.scheduler:updateComplexTask
WmPublic. Updates a complex task on the Scheduler.
The webMethods Integration Server runs the service for a complex task on the day(s)
and time(s) that you specify either during a specied date range or indenitely.
Input Parameters
taskID
service
description
target
environments only.
639
Even Header
Scheduler Folder
lateness
latenessAction
doNotOverlap
640
Odd Header
Scheduler Folder
inputs
startTime
startDate
endTime
endDate
months
hours
minutes
daysOfMonth
daysOfWeek
641
Even Header
Scheduler Folder
Output Parameters
type
String Code indicating the type of task that was updated. For
this type of task, the value of type will be complex.
taskUpdated
Usage Notes
You can use pub.scheduler:getTaskIDs and pub.scheduler:getTaskInfo services to get information
about the task you want to update.
This service updates only the elds for which you provide input parameters. If you want
to clear the information in an optional eld, specify blanks in the parameter for that
eld.
You can also assign values to input parameters of services using the Assign Inputs option
while scheduling a task in Integration Server Administrator.
pub.scheduler:updateOneTimeTask
WmPublic. Updates a one-time task on the Scheduler.
Input Parameters
taskID
service
description
target
642
Odd Header
Scheduler Folder
lateness
latenessAction
runAsUser
643
Even Header
Scheduler Folder
inputs
date
time
Output Parameters
type
String Code indicating the type of task that was updated. For
this type of task, the value of type will be once.
taskUpdated
Usage Notes
This service updates only the elds for which you provide input parameters. If you want
to clear the information in an optional eld, specify blanks in the parameter for that
eld.
You can also assign values to input parameters of services using the Assign Inputs option
while scheduling a task in Integration Server Administrator.
pub.scheduler:updateRepeatingTask
WmPublic. Updates a repeating task to the Scheduler.
Input Parameters
taskID
service
description
target
644
Odd Header
Scheduler Folder
any to run the task on any server in the cluster. The task will
lateness
latenessAction
645
Even Header
Scheduler Folder
startTime
startDate
endTime
endDate
inputs
interval
doNotOverlap
The Scheduler runs the task every time the value of interval
elapses. This is the default.
646
Odd Header
Scheduler Folder
Output Parameters
type
String Code indicating the type of task updated. For this type
of task, the value of type will be repeat.
taskUpdated
Usage Notes
This service updates only the elds for which you provide input parameters. If you want
to clear the information in an optional eld, specify blanks in the parameter for that
eld.
You can also assign values to input parameters of services using the Assign Inputs option
while scheduling a task in Integration Server Administrator.
647
Even Header
648
Odd Header
Schema Folder
28 Schema Folder
Summary of Elements in this Folder .........................................................................................
650
649
Even Header
Schema Folder
You use the elements in the schema folder to validate objects and to validate the
pipeline.
pub.schema:createXSD
pub.schema:validate
pub.schema:validatePipeline
pub.schema.w3c
pub.schema.w3c:datatypes
pub.schema.w3c:structures
pub.schema.w3c:xml
pub.schema.w3c:xsi
650
Odd Header
Schema Folder
pub.schema:createXSD
WmPublic. Creates an XML Schema denition from a document type, from the input
and output parameters of a service, or from a specication.
Input Parameters
name
Output Parameters
isSuccessful
successfully.
errors
Description
url
source
Description
error Message
When fatal errors occur, the service does not generate an XSD
le.
651
Even Header
Schema Folder
warnings
Description
warningMessage
652
Odd Header
Schema Folder
Object constraints are allowed. However, the Integration Server does not represent
them in the XSD.
Strings constrained by older schema types (types dened before the W3C XML 2001
Schema recommendations) are allowed. However, the Integration Server translates
them into 2001 XML Schema types.
It a document variable is considered to be open (the Allow unspecied elds
property is set to true), Integration Server adds an xsd:any element to the complex
type denition that corresponds to the document variable. However, when the
wa.core.schema.createSchema.omitXSDAny sever conguration parameter is set
to true, Integration Server omits the xsd:any element even when the document
is considered to be open. For more information about this server conguration
parameter, see webMethods Integration Server Administrators Guide.
If you use createXSD to create multiple XML Schema denitions that refer to each other,
place the XSD les in the same folder or base path. To ensure that the references resolve
correctly, make sure the relative URLs specied in the XSD les reect the names of the
XSD les within this folder or base path.
pub.schema:validate
WmPublic. Validates an object using an IS document type or a schema.
Input Parameters
object
conformsTo
653
Even Header
Schema Folder
ignoreContent
types).
failIfInvalid
invalid.
Output Parameters
isValid
654
Odd Header
Schema Folder
errors
Description
pathName
errorCode
errorMessage
Usage Notes
When validating an IS document type or schema, Integration Server uses the Perl regular
expression compiler by default. If you need to change this behavior so that Integration
Server uses the Java regular expression compiler during validation, set the server
conguration parameter wa.core.datatype.usejavaregex to true. For information about
seing this conguration parameter, see webMethods Integration Server Administrators
Guide.
When validating against an IS document type, if the Allow null property is set to false for
a eld in the document type and the corresponding element in the instance document
carries the aribute xsi:nil, Integration Server throws the following error
[ISC.0082.9026] Undefined Object found.
When validating against an IS document type, if the Allow null property is set to false for
a eld in the document type and the corresponding element in the instance document
contains content or contains child elements, Integration Server throws the following
error:
[ISC.0082.9024] FieldName cannot have content or child elements since
xsi:nil is true.
655
Even Header
Schema Folder
pub.schema:validatePipeline
WmPublic. Validates the pipeline against a document type.
Input Parameters
conformsTo
maxErrors
ignoreContent
types).
failIfInvalid
656
Odd Header
Schema Folder
errors
Description
pathName
errorCode
errorMessage
pub.schema.w3c
WmPublic. This folder contains denitions for XML Schemas as dened in the W3C
specication XML Schema Part 2: Datatypes.
For more information about schemas and datatypes, see webMethods Service Development
Help.
pub.schema.w3c:datatypes
WmPublic. A schema containing the simple type names for built-in schemas.
pub.schema.w3c:structures
WmPublic. A schema containing the structural components for XML schema denitions.
pub.schema.w3c:xml
WmPublic. A schema containing the XML namespace components, such as xml:lang and
xml:space, as dened in the W3C specications Namespaces in XML and Extensible Markup
Language (XML) 1.0.
pub.schema.w3c:xsi
WmPublic. A schema containing the XML Schema instance components, such as xsi:nil,
xsi:noNamespaceSchemaLocation, xsi:schemaLocation, and xsi:type, as dened in the
W3C XML Schema recommendation Part 1: Structures.
657
Even Header
658
Odd Header
Security Folder
29 Security Folder
About the Security Elements .....................................................................................................
660
661
659
Even Header
Security Folder
You use the elements in the security folder to control which client certicates are sent to
other services and digitally sign data and process digital signatures. You can also use the
elements to store and retrieve outbound passwords to access secure resources.
660
Odd Header
Security Folder
pub.security:clearKeyAndChain
pub.security:setKeyAndChain
pub.security:setKeyAndChainFromBytes
pub.security.enterpriseGateway:alertSpec
pub.security.keystore:getCertificate
pub.security.keystore:getKeyAndChain
pub.security.keystore:getTrustedCertificates
661
Even Header
Security Folder
Element
pub.security.keystore:setKeyAndChain
pub.security.keystore.pkcs7:sign
pub.security.outboundPasswords:setPassword
pub.security.outboundPasswords:getPassword
pub.security.outboundPasswords:listKeys
pub.security.outboundPasswords:removePassword
pub.security.outboundPasswords:updatePassword
pub.security.pkcs7:sign
pub.security.pkcs7:verify
pub.security.util:createMessageDigest
pub.security.util:getCertificateInfo
662
Odd Header
Security Folder
Element
pub.security.util:loadPKCS7CertChain
pub.security.util:createSecureString
pub.security.util:convertSecureString
WmPublic. Returns a
WmSecureString in Java String, byte
array, or character array format.
pub.security.util:destroySecureString
WmPublic. Destroys a
WmSecureString such that it no longer
resides in memory and is removed
from the pipeline.
pub.security.xml:decryptXML
pub.security.xml:encryptXML
pub.security.xml:signXML
pub.security.xml:verifyXML
pub.security:clearKeyAndChain
WmPublic. Clears the set key and certicate chain and reverts back to the default key
and certicate chain for the subsequent set of invoked services.
663
Even Header
Security Folder
Input Parameters
None.
Output Parameters
None.
Usage Notes
The following scenario describes a situation in which you would use the
pub.security.keystore:setKeyAndChain and pub.security:clearKeyAndChain services.
Company A has a webMethods Integration Server with one certicate chain. Company
A wants to start trading with two new companies: Company B and Company C. Due
to explicit business decisions, both Company B and Company C require that secure
requests to their servers use certicates issued by their company's certicate authority.
Company A now has three certicate sets that it must manage: one for connections to
B, one for connections to C, and one for all other requests. Below is a high-level process
ow of what Company A would do if documents needed to be forwarded to companies
B, C, and D (some arbitrary partner without the stringent security).
Assume all network communication is done using HTTPS. Documents are sent to the
companies in the following order: Company D, Company B, Company C, Company D.
All data transfers make use of the pub.client:http service.
1. Invoke pub.client:http to send data to Company D.
2. Invoke pub.security.keystore:setKeyAndChain using the key and certicate chain for
Company B.
3. Invoke pub.client:http to send data to Company B.
4. Invoke pub.security.keystore:setKeyAndChain using the key and certicate chain for
Company C.
5. Invoke pub.client:http to send data to Company C.
6. Invoke pub.security:clearKeyAndChain to revert back to the default key and certicate
chain for Company A's server.
7. Invoke pub.client:http to send data to Company D.
See Also
pub.security.keystore:setKeyAndChain
pub.security:setKeyAndChain
WmPublic. Deprecated - Replaced by pub.security.keystore:setKeyAndChain.
664
Odd Header
Security Folder
Associates a key and certicate chain with the subsequent set of invoked services. Use
this service to associate a key and certicate chain that is dierent from the default
seings, and if your key and certicate information is located in les (rather than byte
arrays).
Input Parameters
privKeyFile
certFiles
Output Parameters
None.
pub.security:setKeyAndChainFromBytes
WmPublic. Associates a key and certicate chain with the subsequent set of invoked
services. Use this service to associate a key and certicate chain that is dierent from
the default seings, and if your key and certicate information is located in byte arrays
(rather than les).
Input Parameters
provoke
certs
Output Parameters
None.
665
Even Header
Security Folder
Usage Notes
To enable this service to work properly if you use the FTPS protocol, you must set the
secure parameter to True in the pub.client:http and pub.client.ftp:login services.
You can use pub.security:clearKeyAndChain with
pub.security:setKeyAndChainFromBytes. See the Usage Notes for
pub.security:clearKeyAndChain for more information about using the
pub.security:setKeyAndChainFromBytes service.
pub.security.enterpriseGateway:alertSpec
WmPublic. Specication for ow services used to send alerts about violations of
webMethods Enterprise Gateway rules.
Use this specication as the signature of the ow service that Integration Server invokes
when a request violates an Enterprise Gateway rule. For more information about
webMethods Enterprise Gateway, see webMethods Integration Server Administrators Guide.
Input Parameters
ruleName
alertInfo
Description
alertAction
666
Odd Header
Security Folder
requests only.
requests only.
requests only.
lterName
mobileAppProtectionFilter
has no lters.
message
requestUser
requestHost
requestTime
667
Even Header
Security Folder
serverHost
serverPort
Output Parameters
None.
pub.security.keystore:getCertificate
WmPublic. Returns the trusted certicate, stored in a truststore, that corresponds to the
certicate's alias.
Input Parameters
trustStoreAlias
certAlias
Output Parameters
certicate
Usage Notes
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide
668
Odd Header
Security Folder
pub.security.keystore:getKeyAndChain
WmPublic. Returns a private key and its associated certicate chain from a designated
keystore.
Input Parameters
keyStoreAlias
String Alias for the keystore that contains the private key of
interest and its certicate.
keyAlias
String Alias for the private key stored in the specied keystore.
Output Parameters
privateKey
certChain
Usage Notes
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide.
pub.security.keystore:getTrustedCertificates
WmPublic. Returns the trusted certicates located in a specied truststore.
Input Parameters
trustStoreAlias
Output Parameters
certicates
Usage Notes
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide.
669
Even Header
Security Folder
pub.security.keystore:setKeyAndChain
WmPublic. Associates a key and certicate chain with the subsequent set of invoked
services. Use this service to associate a key and certicate chain that is dierent from the
default seings, and if your key and certicate information is stored in a keystore le.
Input Parameters
keyStoreAlias
keyAlias
Output Parameters
None.
Usage Notes
This service replaces pub.security:setKeyAndChain, which is deprecated.
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide
See Also
pub.security:clearKeyAndChain
pub.security.keystore.pkcs7:sign
WmPublic. Creates a PKCS7 signed Data object.
Input Parameters
signerInfo
Description
keyStoreAlias
keyAlias
670
Odd Header
Security Folder
hashAlgorithm
data
detachedSignature
Usage Notes
This service supersedes pub.security.pkcs7:sign, which is deprecated.
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide.
pub.security.outboundPasswords:setPassword
WmPublic. Stores a key and password in the password store.
Input Parameters
key
value
671
Even Header
Security Folder
isInternal
Output Parameters
result
message
Usage Notes
This is the basic process a ow service should follow to store an outbound password:
1. Call pub.security.util:createSecureString to create a WmSecureString object containing the
password to be stored.
For security reasons, the ow service should be run manually requiring an
authorized person to type the password to be stored. This will eliminate the need to
save the password on disk in an unencrypted format.
2. Call pub.security.outboundPasswords:setPassword to save the password in encrypted form
in the outbound password store.
The pub.security.outboundPasswords:setPassword service requires a key to be supplied
which is basically a key to the password. This key must be saved in some way; any
ow service wishing to use the password to access a secure resource will need to
supply the key to retrieve the password from the outbound password store.
3. Once the password is successfully stored, call pub.security.util:destroySecureString to
remove the password from memory.
672
Odd Header
Security Folder
this parameter is set to "true", you cannot access internal passwords if the Integration
Server is congured to deny access to internal passwords. Access to internal passwords
is controlled by the wa.security.ope.AllowInternalPasswordAccess conguration
parameter on the Integration Server; for more information see webMethods Integration
Server Administrators Guide.
pub.security.outboundPasswords:getPassword
WmPublic. Retrieves a password from the password store for a given key.
Input Parameters
key
isInternal
Output Parameters
value
result
message
Usage Notes
This is the basic process a ow service should follow to retrieve an outbound password:
1. Call pub.security.outboundPasswords:getPassword with the key to the password to be
retrieved.
If the key is unknown, you can call pub.security.outboundPasswords:listKeys to retrieve a
list of keys currently in the outbound password store.
The pub.security.outboundPasswords:getPassword service returns a WmSecureString object
containing the retrieved password.
2. Call pub.security.util:convertSecureString to convert the password to a usable format.
The password can then be passed to the authenticating mechanism of the secure
resource.
673
Even Header
Security Folder
pub.security.outboundPasswords:listKeys
WmPublic. Lists the keys in the password store.
Input Parameters
isInternal
Output Parameters
key
result
pub.security.outboundPasswords:removePassword
WmPublic. Removes a password from the password store for a given key.
Input Parameters
key
isInternal
Output Parameters
result
674
Odd Header
Security Folder
message
pub.security.outboundPasswords:updatePassword
WmPublic. Changes the password value for a key already in the password store.
Input Parameters
key
newPassword
isInternal
Output Parameters
result
message
pub.security.pkcs7:sign
WmPublic. Deprecated - Replaced by pub.security.keystore.pkcs7:sign.
Creates a PKCS7 SignedData object.
This service enables multiple entities to sign the specied data. Each signerInfo block
contained in the resulting signature contains two authenticated aributes: the content
type and a timestamp.
Input Parameters
signerInfo
675
Even Header
Security Folder
Key
Description
certChain
java.security.cert.X509Certificate[ ] or
byte[ ][ ] Certicate chain of the signer.
The subject that is performing the
signature should be the rst certicate
in this chain, while the root Certifying
Authority should be the last. The
key provided should correspond to
the public key contained in the rst
certicate of the chain.
key
keyAlias
hashAlgorithm
data
detachedSignature
676
Odd Header
Security Folder
Usage Notes
This service is superseded by pub.security.keystore.pkcs7:sign.
pub.security.pkcs7:verify
WmPublic. Processes a digital signature to guarantee that the data associated with the
signature has not been modied.
Input Parameters
signature
data
detachedSignature
default.
signerCertChain
Output Parameters
content
677
Even Header
Security Folder
Description
certChain
java.security.cert.X509Certificate[ ]
Certicate chain of the signer. The
chain will appear in hierarchical
order, starting with the signer's X.509
certicate in element 0.
timeStamp
trusted
pub.security.util:createMessageDigest
WmPublic. Generates a message digest for a given message.
Input Parameters
algorithm
678
Odd Header
Security Folder
input
Output Parameters
output
pub.security.util:getCertificateInfo
WmPublic. Retrieves information such as serial number, issuer, and expiration date
from a digital certicate.
Input Parameters
certicate
Output Parameters
info
Description
version
serialNumber
signature
issuer
validity
Description
notBefore
679
Even Header
Security Folder
certicate is valid
(for example,
3/15/00 3:36PM).
notAfter
subject
subjectPublicKey
Algorithm
pub.security.util:loadPKCS7CertChain
WmPublic. Converts a certicate chain that is in PKCS #7 format to a list of byte arrays.
Input Parameters
certicateChain
Output Parameters
certicates
pub.security.util:createSecureString
WmPublic. Creates a WmSecureString object from either a Java String, byte array, or
character array.
WmSecureString is a mutable alternative to Java String. It allows the characters in the
string to be explicitly removed from memory. Any password you wish to store in the
Integration Server's outbound password store must be converted to a WmSecureString.
680
Odd Header
Security Folder
Input Parameters
string
bytes
chars
encoding
Output Parameters
secureString
Usage Notes
Only one of the input parameters (i.e. string , bytes , or chars ) may be specied. If more
than one is specied, an exception will be thrown. An exception is also thrown if none of
these is specied.
pub.security.util:convertSecureString
WmPublic. Returns a WmSecureString in Java String, byte array, or character array
format.
Input Parameters
secureString
returnAs
681
Even Header
Security Folder
Output Parameters
string
bytes
chars
pub.security.util:destroySecureString
WmPublic. Destroys a WmSecureString such that it no longer resides in memory and is
removed from the pipeline.
Input Parameters
secureString
Output Parameters
None.
pub.security.xml:decryptXML
WmPublic. Decrypts the encrypted XML, and returns the XML as either a string or
stream object.
Input Parameters
xmldata
xmlStream
682
Odd Header
Security Folder
keyStoreAlias
keyAlias
encoding
Output Parameters
decryptedXMLData
decryptedXMLStream
Usage Notes
There are several prerequisites to using pub.security.xml:decryptXML:
Certicates must be congured for Integration Server and the client with which it is
exchanging secure XML.
The sending, encrypting client must have access to Integration Server's public key
before the document exchange can occur.
Integration Server stores its certicates in keystores and truststores. You must
congure a keystore and truststore for Integration Server before using the XML
encryption services.
You access the public and private keys for Integration Server through aliases. For
information about Integration Server keystores and truststores, refer to webMethods
Integration Server Administrators Guide.
The pub.security.xml:decryptXML service works as follows:
1. The external system sends the XML document encrypted with the Integration
Server's public key.
2. Integration Server receives the document and passes it to the XML service.
3. Integration Server uses the private key member of the key pair to decrypt the XML.
683
Even Header
Security Folder
pub.security.xml:encryptXML
WmPublic. Encrypt an XML document or node in an XML document.
Input Parameters
xmldata
xmlStream
nodeSelectors
nsDecls
recipientID
recipientCert
684
Odd Header
Security Folder
algorithm
www.w3.org/2001/04/xmlenc#aes256-cbc
aes192-cbc for the algorithm at hp://
www.w3.org/2001/04/xmlenc#aes192-cbc
aes128-cbc for the algorithm at hp://
www.w3.org/2001/04/xmlenc#aes128-cbc
encoding
685
Even Header
Security Folder
Output Parameters
encryptedXMLData
encryptedXMLStream
Usage Notes
If both xmldata and xmlStream are provided, xmlStream takes precedence.
There are several prerequisites to using the pub.security.xml:encryptXML service:
Certicates must be congured for Integration Server and the client with which it is
exchanging encrypted XML.
Before an encrypted XML document can be exchanged between Integration Server
and an external system, the external system must share its public key.
Prior to use of pub.security.xml:encryptXML, Integration Server must have access to the
partner's public key. Such access is possible through:
An Integration Server certicate mapping (for information, refer to webMethods
Integration Server Administrators Guide).
A copy of the partner's X.509 certicate that is available to Integration Server.
In pub.security.xml:encryptXML, the certicate/public key is specied through one of the
following input parameters: the client's name (through recipientID), or the public key of
the partner application (through recipientCert) .
Because encryption is a processing-intensive activity, it is recommended to only encrypt
the XML nodes requiring protection.
Signing and Encrypting the Same XML Document
You can use both encryption and signing in the same XML document.
If you sign and encrypt dierent XML elements in a document, you can run either
pub.security.xml:signXML or pub.security.xml:encryptXML rst.
Typically, if you sign and encrypt the same XML elements in a document,
you should sign the elements before encrypting them. That is, invoke
pub.security.xml:signXML before invoking pub.security.xml:encryptXML.
pub.security.xml:signXML
WmPublic. Digitally sign an outgoing XML node or document.
686
Odd Header
Security Folder
Input Parameters
xmldata
xmlStream
uri
noNamespace SchemaLocation String Optional. A URI that identies the location of the
XML schema denition that contains the ID aribute
specied in uri .
Provide a noNamespaceSchemaLocation when specifying
an ID aribute for uri and the ID aribute resides in an
XML schema with no namespaces.
schemaLocations
nodeSelectors
nsDecls
687
Even Header
Security Folder
the default.
signatureNodeSelector
signatureAlgorithm
digestAlgorithm
canonicalizationAlgorithm
688
Odd Header
Security Folder
hp://www.w3.org/2001/10/xml-excc14n#WithComments
signatureId
keyStoreAlias
keyAlias
includeCertChain
certData
idXmlObject
encoding
addSignatureAsLastElement
689
Even Header
Security Folder
the root.
Output Parameters
signedXMLData
signedXMLStream
Usage Notes
Before the signing/signature verication of XML can occur between Integration
Server and an external system, the Integration Servermust share the public key that
corresponds to the private key with which the document is signed. Integration Server
must share the public key with the external system that will be performing verication.
keyAlias and keyStoreAlias should either both be provided or both be absent from
the input. If no value is provided for these parameters, Integration Server uses the
private key/certicate specied for the Signing Key. If the Signing Key is not specied,
Integration Server uses the SSL Key.
For information about conguring the Signing Key and SSL Key keystore aliases using
the Security > Certificates screen in Integration Server Administrator, refer to webMethods
Integration Server Administrators Guide.
If both xmldata and xmlStream are provided, xmlStream takes precedence.
The uri and nodeSelectors parameters identify the nodes to be signed.
If uri is specied and nodeSelectors is not specied, Integration Server signs the entire
node identied by uri .
If uri and nodeSelectors are specied, Integration Server determines which nodes to sign
by locating the node specied by the uri and then applying the lter from nodeSelectors .
If uri is not specied and nodeSelectors is specied, Integration Server determines which
nodes to sign by applying the lter in nodeSelectors to the entire XML.
If neither uri nor nodeSelectors are specied, Integration Server signs the entire XML.
You can use the value of an ID aribute as the uri .
For example, #sampleID
Where sampleID is an ID aribute that functions as a unique identier for an element
in an XML schema denition. In this example, Integration Server will locate the node
webMethods Integration Server Built-In Services Reference Version 9.6
690
Odd Header
Security Folder
with the ID aribute "sampleID" and then apply the lter specied by nodeSelectors to
determine which nodes to sign.
Signature Types
As opposed to a detached signature, which is kept apart from the original document,
enveloping and enveloped signatures are tightly coupled with the original document.
An enveloping signature must be a parent node of the data being signed:
<!-- Example of Enveloping Signature --> <Signature>
<my_document>. . . </my_document> </Signature>
The following input parameters and values are applicable only to enveloping signatures:
isEnveloped. Specify a value of "false" for enveloping. If isEnveloped is set to false,
then:
If both uri and idXmlObject are null, Integration Server creates a dynamic unique
value for both uri and idXmlObject and signs the XML.
If idXmlObject is provided and uri is null, Integration Server creates a uri with a
value of #idXmlObject_value and signs the XML.
If both and uri and idXmlObject are provided and match the XML contract (for
example, uri ='#idXmlObject '), Integration Server signs the XML. If the uri and
idXmlObject parameters do not match the contract, Integration Server issues an
exception.
idXmlObject. Species the ID for the node that holds the original, signed XML.
An enveloped signature must be a child node of the data being signed:
<!-- Example of Enveloped Signature --> <my_document>
<Signature> . . . </Signature> </my_document>
The following parameters and values are applicable only to enveloped signatures:
isEnveloped. The default value of "true" species that the signature is enveloped.
signatureNodeSelector. XPath to the node where the signature is entered. If no value is
provided, the signature is placed as a rst child of the root node.
pub.security.xml:signXML does not support detached signatures.
Signing and Encrypting the Same XML Document
You can use both encryption and signing in the same XML document.
If you sign and encrypt dierent XML elements in a document, you can run either
pub.security.xml:signXML or pub.security.xml:encryptXML rst.
Typically, if you sign and encrypt the same XML elements in a document, you should
sign the elements before encrypting them. That is, invoke pub.security.xml:signXML
before invoking pub.security.xml:encryptXML.
691
Even Header
Security Folder
pub.security.xml:verifyXML
WmPublic. Veries a signed XML document, or node in an XML document, and returns
information about the success or failure of the verication.
Input Parameters
xmldata
xmlStream
signatureSelectors
String Array XPaths that are used to identify the signature; can
be any valid XPath. Following is an example:
//*[@ID="Sign001"]
nsDecls
noNamespace
SchemaLocation
schemaLocations
encoding
Output Parameters
verifcationResult
692
Odd Header
Security Folder
failedSignatureSelector
failureReason
certMap
Usage Notes
If both xmldata and xmlStream are provided, xmlStream takes precedence.
Before pub.security.xml:verifyXML can verify a signature, the partner application's public key
must have been made available to Integration Server, either through:
Integration Server certicate mapping.
The partner application having sent a copy of its certicate to Integration Server.
For information on Integration Server certicate mapping, refer to webMethods Integration
Server Administrators Guide.
The pub.security.xml:verifyXML service works as follows:
1. Integration Server receives the signed XML document.
2. Integration Server extracts the public key from the partner application's certicate.
3. Integration Server uses the public key to verify the authenticity of the XML
document.
693
Even Header
694
Odd Header
SMIME Folder
30 SMIME Folder
Summary of Elements in this Folder .........................................................................................
696
695
Even Header
SMIME Folder
You use the elements in the smime folder to create digitally signed and/or encrypted
MIME messages. You also use the services in this folder to process signed and encrypted
MIME messages that are passed into the pipeline.
pub.smime:createCertsOnlyData
pub.smime:createEncryptedData
pub.smime:createSignedAndEncryptedData
pub.smime:createSignedData
pub.smime:processCertsOnlyData
pub.smime:processEncryptedData
pub.smime:processSignedData
pub.smime.keystore:createSignedAndEncryptedData
pub.smime.keystore:createSignedData
696
Odd Header
SMIME Folder
Element
pub.smime.keystore:processEncryptedData
pub.smime:createCertsOnlyData
WmPublic. Generates a PKCS #7 certs-only S/MIME entity from an array of certicates.
This service can be used to develop mechanisms for transmiing certicates and
certicate chains to other parties.
Input Parameters
certicates
Output Parameters
SMimeEnvStream
Usage Notes
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
pub.smime:createEncryptedData
WmPublic. Encrypts a MIME message.
Input Parameters
envStream
recipientCerts
697
Even Header
SMIME Folder
encryptionAlg
keyLength
Output Parameters
SMimeEnvStream
Usage Notes
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.smime:createSignedData
pub.smime:processEncryptedData
pub.mime:getEnvelopeStream
Examples
See the following in the WmSamples package in the certied samples area
of the Knowledge Center on Empower Product Support website at hps://
empower.softwareag.com:
sample.smime:build_EncryptedSMime
pub.smime:createSignedAndEncryptedData
WmPublic. Deprecated - Replaced by pub.smime.keystore:createSignedAndEncryptedData.
Digitally signs a MIME message and then encrypts it.
Important: You must use this service when you want to create a message that is
both signed and encrypted. You cannot produce this type of message using the
pub.smime:createSignedData and pub.smime:createEncryptedData services.
Input Parameters
envStream
698
Odd Header
SMIME Folder
privKey
certicates
Contents
Signer's certicate.
Intermediary CA Certicate.
Intermediary CA Certicate.
Root CA Certicate.
explicit
default.
recipientCerts
encryptionAlg
keyLength
699
Even Header
SMIME Folder
Output Parameters
SMimeEnvStream
Usage Notes
This service is superseded by pub.smime.keystore:createSignedAndEncryptedData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide.
See Also
pub.smime:createEncryptedData
pub.smime:processEncryptedData
pub.smime:createSignedData
pub.smime:processSignedData
pub.smime.keystore:createSignedData
pub.mime:getEnvelopeStream
Examples
See the following in the WmSamples package in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.smime:build_SignedAndEncryptedSMime
pub.smime:createSignedData
WmPublic. Deprecated - Replaced by pub.smime.keystore:createSignedData. Digitally signs a
MIME message.
Input Parameters
envStream
privKey
certicates
700
Odd Header
SMIME Folder
Contents
Signer's certicate.
Intermediary CA Certicate.
Intermediary CA Certicate.
Root CA Certicate.
explicit
default.
Output Parameters
SMimeEnvStream
Usage Notes
This service is superseded by pub.smime.keystore:createSignedData.
For general information about MIME messages and using the MIME services, see the
MIME-S/MIME Developers Guide .
See Also
pub.smime:createEncryptedData
pub.mime:getEnvelopeStream
701
Even Header
SMIME Folder
pub.smime:processCertsOnlyData
WmPublic. Extracts the certicates from a PKCS #7 certs-only S/MIME entity.
Input Parameters
SMimeEnvStream
Output Parameters
certicates
pub.smime:processEncryptedData
WmPublic. Deprecated - Replaced by pub.smime.keystore:processEncryptedData.
Decrypts an encrypted S/MIME message.
Input Parameters
SMimeEnvStream
recipientCert
privKey
byte[ ] Private key of the party receiving the message (that is,
the party whose public key was used to encrypt the message).
Output Parameters
mimeData
contentDigest
String Message digest of the encrypted content, base64encoded. (Some sites return this digest to the sender to
acknowledge their receipt of the message.)
702
Odd Header
SMIME Folder
encrypted
signed
certsOnly
entity.
stream
Usage Notes
This service is superseded by pub.smime.keystore:processEncryptedData.
If the decrypted message is signed or encrypted, mimeData will be empty, and
the decrypted message will reside in stream . You can check the state of the signed
and encrypted output variables to determine whether the decrypted message
requires additional processing, and pass stream to the pub.smime:processSignedData or
pub.smime:processEncryptedData service as necessary.
Important: You can examine the contents of mimeData during testing and debugging.
However, because the internal structure of mimeData is subject to change without
notice, do not explicitly set or map data to/from these elements in your service. To
manipulate or access the contents of mimeData , use only the MIME services that
Integration Server provides.
See Also
pub.smime:processSignedData
pub.smime:createEncryptedData
pub.smime:processSignedData
WmPublic. Veries the signature from a signed S/MIME entity and extracts the message
from it.
703
Even Header
SMIME Folder
Input Parameters
SMimeEnvStream
signerCertChain
Contents
Signer's certicate.
Intermediary CA Certicate.
Intermediary CA Certicate.
Root CA Certicate.
Note: If the signer included the certicate chain with the digital
signature, you do not need to supply signerCertChain .
Output Parameters
mimeData
contentDigest
signerCert
encrypted
signed
704
Odd Header
SMIME Folder
certsOnly
entity.
stream
verify
errorCode
errorMessage
errorMessage
705
Even Header
SMIME Folder
Untrusted certificate.
Usage Notes
If verify is false, the errorCode and errorMessage values will indicate the error that caused
the failure. Note that errorCode values 5 through 7 do not represent signature-validation
failures and, therefore, do not cause the verify ag to be set to false.
If the extracted entity is signed or encrypted, mimeData will be empty, and the extracted
entity will reside in stream . You can check the state of the signed and encrypted output
variables to determine whether the extracted entity requires additional processing, and
pass stream to the pub.smime:processEncryptedData service as necessary.
Important: You can examine the contents of mimeData during testing and debugging.
However, because the internal structure of mimeData is subject to change without
notice, do not explicitly set or map data to/from these elements in your service. To
manipulate or access the contents of mimeData , use only the MIME services that
Integration Server provides.
See Also
pub.smime:processEncryptedData
pub.smime:createSignedData
Examples
Important: See the following in the WmSamples packages in the certied samples
area of the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.smime:extract_SignedSMime
sample.smime:extract_SignedAndEncryptedSMime
pub.smime.keystore:createSignedAndEncryptedData
WmPublic. Digitally signs and encrypts a MIME message.
706
Odd Header
SMIME Folder
Input Parameters
envStream
keyStoreAlias
keyAlias
explicit
default.
recipientCerts
Object List A list of byte[ ] for the partner certicates for whom
this message will be encrypted.
encryptionAlg
keyLength
Output Parameters
SMimeEnvStream
Usage Notes
This service supersedes pub.smime:createSignedAndEncryptedData
You must use this service when you want to create a message that is both signed and
encrypted.
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide
707
Even Header
SMIME Folder
pub.smime.keystore:createSignedData
WmPublic. Creates signed S/MIME data.
Input Parameters
envStream
keyStoreAlias
keyAlias
explicit
default.
Output Parameters
SMimeEnvStream
Usage Notes
This service supersedes pub.smime:createSignedData.
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide.
pub.smime.keystore:processEncryptedData
WmPublic. Decrypts an encrypted S/MIME message.
Input Parameters
SMimeEnvStream
keyStoreAlias
708
Odd Header
SMIME Folder
keyAlias
Output Parameters
mimeData
contentDigest
String Message digest of the encrypted content, base64encoded. (Some sites return this digest to the sender to
acknowledge their receipt of the message.
encrypted
signed
certsOnly
entity.
stream
Usage Notes
This service supersedes pub.smime:processEncryptedData.
For information about using aliases for keystores, truststores, and private keys, see
webMethods Integration Server Administrators Guide.
709
Even Header
710
Odd Header
SOAP Folder
31 SOAP Folder
Summary of Elements in this Folder .........................................................................................
712
711
Even Header
SOAP Folder
You use the elements in the soap folder to compose and send SOAP messages and to
receive and retrieve data from within them.
pub.soap.handler:addBodyBlock
pub.soap.handler:addFaultBlock
pub.soap.handler:addHeaderBlock
pub.soap.handler:addHeaderElement
pub.soap.handler:generateDocumentTypesFromWSDL
pub.soap.handler:getBodyBlock
pub.soap.handler:getBodyBlockQNames
pub.soap.handler:getFaultBlock
pub.soap.handler:getHeaderBlock
pub.soap.handler:getHeaderBlockQNames
712
Odd Header
SOAP Folder
Element
pub.soap.handler:getHeaderElement
pub.soap.handler:getInitialSOAPRequest
pub.soap.handler:getMessageAddressingProperties
pub.soap.handler:getProperty
pub.soap.handler:getServicePipeline
pub.soap.handler:getSOAPMessage
pub.soap.handler:getWebServiceInvocationProperties
pub.soap.handler:handlerSpec
pub.soap.handler:hasFaultMessage
pub.soap.handler:listConsumer
713
Even Header
SOAP Folder
Element
pub.soap.handler:listProvider
pub.soap.handler:registerConsumer
WmPublic. Deprecated
- Replaced by
pub.soap.handler:registerWmConsumer.
pub.soap.handler:registerProvider
pub.soap.handler:registerWmConsumer
pub.soap.handler:registerWmProvider
pub.soap.handler:removeBodyBlock
pub.soap.handler:removeHeaderBlock
pub.soap.handler:removeHeaderElement
pub.soap.handler:removeProperty
pub.soap.handler:setProperty
pub.soap.handler:setSOAPMessage
pub.soap.handler:unregisterConsumer
714
Odd Header
SOAP Folder
Element
pub.soap.handler:unregisterProvider
pub.soap.handler:updateFaultBlock
pub.soap.processor:list
pub.soap.processor:processMessage
pub.soap.processor:processRPCMessage
pub.soap.processor:registerProcessor
pub.soap.processor:unregisterProcessor
pub.soap.schema:encoding
pub.soap.schema:encoding_1_2
pub.soap.schema:envelope
pub.soap.schema:envelope_1_2
pub.soap.utils:addBodyEntry
715
Even Header
SOAP Folder
Element
pub.soap.utils:addHeaderEntry
pub.soap.utils:addTrailer
pub.soap.utils:callbackServiceSpec
pub.soap.utils:convertToVersionSpecificSOAPFault
pub.soap.utils:createSoapData
pub.soap.utils:createXOPObject
WmPublic. Generates a
com.wm.util.XOPObject instance
from a base64Binary string, a byte
array, or an input stream.
pub.soap.utils:exitUnableToUnderstand
pub.soap.utils:getActor
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
716
Odd Header
SOAP Folder
Element
pub.soap.utils:getDocument
pub.soap.utils:getEncoding
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
pub.soap.utils:getMustUnderstand
pub.soap.utils:getQName
pub.soap.utils:getTrailers
pub.soap.utils:getXOPObjectContent
pub.soap.utils:QName
pub.soap.utils:removeBodyEntry
pub.soap.utils:removeHeaderEntry
pub.soap.utils:removeTrailer
717
Even Header
SOAP Folder
Element
pub.soap.utils:requestResponseSpec
pub.soap.utils:resetWSDEffectivePolicy
pub.soap.utils.setWSDEffectivePolicy
pub.soap.utils:soapDataToBytes
pub.soap.utils:soapDataToString
pub.soap.utils:soapFault
pub.soap.utils:streamToSoapData
WmPublic. Converts an
InputStream containing a SOAP
message to a SOAP object.
pub.soap.utils:stringToSoapData
pub.soap.utils:validateSoapData
pub.soap.wsa:action
718
Odd Header
SOAP Folder
Element
pub.soap.wsa:faultTo
pub.soap.wsa:from
pub.soap.wsa:messageID
pub.soap.wsa:problemAction
pub.soap.wsa:problemHeaderQName
pub.soap.wsa:problemIRI
pub.soap.wsa:relatesTo
pub.soap.wsa:replyTo
pub.soap.wsa:retryAfter
719
Even Header
SOAP Folder
Element
pub.soap.wsa:to
pub.soap.wsa:schema_wsa
www.w3.org/2005/08/addressing
namespace.
pub.soap.wsa.submission:action
pub.soap.wsa.submission:faultTo
pub.soap.wsa.submission:from
pub.soap.wsa.submission:messageID
pub.soap.wsa.submission:relatesTo
pub.soap.wsa.submission:replyTo
pub.soap.wsa.submission:retryAfter
720
Odd Header
SOAP Folder
Element
pub.soap.wsa.submission:to
pub.soap.wsa.submission:schema_wsa_submission
namespace.
pub.soap.wsrm:closeSequence
pub.soap.wsrm:createSequence
pub.soap.wsrm:sendAcknowledgementRequest
WmPublic. Requests an
acknowledgment for a message
sequence.
pub.soap.wsrm:terminateSequence
pub.soap.wsrm:waitUntilSequenceCompleted
WmPublic. Requests an
acknowledgment for a message
sequence.
pub.soap.handler:addBodyBlock
WmPublic. Inserts a document into a SOAP message as a new body block.
Input Parameters
messageContext
721
Even Header
SOAP Folder
use the same message context, which enables you to use the
message context to pass information among handlers.
documentType
inputBodyBlock
Description
operationQName
bodyDocument
Key
Description
namespaceName
localName
722
Odd Header
SOAP Folder
String Optional. Flag that indicates whether you want the service
to validate inputBodyBlock/bodyDocument against the IS document
type specied in the documentType input parameter. If you do not
use documentType to specify an IS document type, the validation
will fail.
Set validate to:
true to validate inputBodyBlock/bodyDocument . If the validation
Output Parameters
status
723
Even Header
SOAP Folder
See Also
pub.soap.handler:getBodyBlock
pub.soap.handler:removeBodyBlock
pub.soap.handler:addFaultBlock
WmPublic. Inserts a document into a SOAP message as a new fault block.
Input Parameters
messageContext
documentType
soapFault
Document SOAP fault block that you want to add to the SOAP
message. Integration Server converts the document to an XML
node and inserts it as a fault block.
Key
Descriptions
code
724
Odd Header
SOAP Folder
Key
Descriptions
namespaceName
localName
subCodes
reasons
Descriptions
*body
@lang
node
role
detail
725
Even Header
SOAP Folder
validate
exception is thrown.
Output Parameters
status
pub.soap.handler:addHeaderBlock
WmPublic. Inserts a document into a SOAP message as a new header block.
Input Parameters
messageContext
726
Odd Header
SOAP Folder
documentType
inputHeaderBlock
Description
mustUnderstand
727
Even Header
SOAP Folder
value "hp://schemas.xmlsoap.org/
soap/actor/next" to the header block.
value "hp://www.w3.org/2003/05/
soap-envelope/role/none" to the header
block.
User-specied value to specify the target
of the header block. Typically, this will
be a URI.
For SOAP 1.2, set to:
Ultimate receiver to omit the
728
Odd Header
SOAP Folder
value "hp://www.w3.org/2003/05/
soap-envelope/role/none" to the header
block.
User-specied value to specify the target
of the header block. Typically, this will
be a URI.
headerDocument
validate
Output Parameters
None.
Usage Notes
This service replaces pub.soap.handler:addHeaderElement, which is deprecated.
See Also
pub.soap.handler:getHeaderBlock
pub.soap.handler:removeHeaderBlock
729
Even Header
SOAP Folder
pub.soap.handler:addHeaderElement
WmPublic. Deprecated - Replaced by pub.soap.handler:addHeaderBlock.
Inserts a document into a SOAP message as a new header element (block).
Input Parameters
messageContext
QName
headerDocument
documentType
mustUnderstand
730
Odd Header
SOAP Folder
mandatory.
Output Parameters
None.
Usage Notes
QName and documentType are mutually exclusive. Even though the parameters are
optional, you must specify one or the other. If you do not specify either, Integration
Server displays the following error:
[ISS.0088.9422] One of the mutually exclusive parameter QName or
documentType is missing or invalid.
If you specify values for QName and documentType , Integration Server uses the QName
value and ignores documentType .
731
Even Header
SOAP Folder
For more information about the mustUnderstand and actor aributes in SOAP 1.1,
see the Simple Object Access Protocol (SOAP) 1.1 - W3C Note 08 May 2000 at hp://
www.w3.org/TR/SOAP/.
For more information about the mustUnderstand and role aributes in SOAP 1.2, see the
Simple Object Access Protocol (SOAP) 1.2 specication at hp://www.w3.org/TR/SOAP12/.
Example
Suppose that messageContext contains a SOAP message with an empty SOAP header and
you want to add a header element by passing the pub.soap:handler:addHeaderElement service
the following input parameters:
Input Parameter
Provided Value
QName
namespaceName
userHandlerNamespaceName
localName
userHandlerLocalName
headerDocument
documentType
Not provided.
mustUnderstand
true
actor
soapActor
732
Odd Header
SOAP Folder
SOAP-ENV:actor="soapActor" SOAP-ENV:mustUnderstand="1">
<myString>Value of myString field.</myString>
</HDR:userHandlerLocalName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
...
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Integration Server uses HDR as the namespace prex for the namespace name of the
header.
See Also
pub.soap.handler:getHeaderElement
pub.soap.handler:removeHeaderElement
pub.soap.handler:generateDocumentTypesFromWSDL
WmPublic. Generates IS document types from a WSDL.
Input Parameters
wsdlURL
wsdlString
targetPackageName
targetFolderName
generateheaderDocs
733
Even Header
SOAP Folder
generateBodyDocs
generateFaultDocs
generateXOPObject
ForBase64Binary
734
Odd Header
SOAP Folder
Usage Notes
wsdlURL and wsdlString are mutually exclusive. Even though the parameters are
optional, you must specify one or the other. If you do not specify either, Integration
Server displays the following error:
ISS.0088.9422 Either parameter {0} or {1} must be provided.
If you specify values for wsdlURL and wsdlString , Integration Server uses wsdlString
and ignores wsdlURL .
If the WSDL provided in wsdlURL or wsdlString is invalid, the service ends in error.
If the package specied in targetPackageName does not exist, the service ends in error.
If the folder specied in targetFolderName does not exist, Integration Server creates it
when the service executes.
If the folder specied in targetFolderName exists but is not empty, the service ends in
error.
If you want execute this service for the same WSDL more than once, make sure to
specify a dierent targetFolderName or delete the contents of targetFolderName before reexecuting the service for the WSDL again.
If the service ends in error, it throws any errors or warnings as an exception and does
not create any IS document types. However, if the service encounters warnings, it places
the warnings in the warnings eld and generates any IS document types.
pub.soap.handler:getBodyBlock
WmPublic. Retrieves a body block from a SOAP message.
735
Even Header
SOAP Folder
Input Parameters
Object Message context containing the SOAP message from
which to retrieve the body block.
messageContext
documentType
validate
exception is thrown.
Output Parameters
outputBodyBlock
Description
operationQName
736
Odd Header
SOAP Folder
bodyDocument
Key
Description
namespaceName
localName
See Also
pub.soap.handler:addBodyBlock
pub.soap.handler:removeBodyBlock
pub.soap.handler:getBodyBlockQNames
WmPublic. Returns the QName for each body block in a SOAP message.
Note: RPC/Encoded and RPC/Literal services can have only one body block. However,
Document/Literal services can have multiple body blocks.
Input Parameters
messageContext
737
Even Header
SOAP Folder
See Also
pub.soap.handler:removeBodyBlock
pub.soap.handler:getFaultBlock
WmPublic. Retrieves a fault block from a SOAP message.
Input Parameters
messageContext
documentTypes
validate
738
Odd Header
SOAP Folder
is the default.
Output Parameters
Document Contents of the fault block.
Key
Description
soapFault
Description
code
Descriptions
namespaceName
localName
subCodes
reasons
739
Even Header
SOAP Folder
Key
Descriptions
*body
@lang
node
role
String Role in which the node was operating at the point the
fault occurred.
detail
See Also
pub.soap.handler:addFaultBlock
pub.soap.handler:getHeaderBlock
WmPublic. Retrieves a header block from a SOAP message.
Input Parameters
messageContext
documentType
740
Odd Header
SOAP Folder
Description
mustUnderstand
contained mustUnderstand="true".
false indicates that the
741
Even Header
SOAP Folder
headerDocument
Usage Notes
This service replaces pub.soap.handler:getHeaderElement, which is deprecated.
If the very rst eld in the IS document type specied for documentType does not contain
a QName, the service returns an empty outputHeaderBlock and does not throw an error.
If the QName of the very rst eld in the IS document type specied for documentType
does not match a QName of a header block in the SOAP message, the service returns an
empty outputHeaderBlock and does not throw an error.
If the QName of the very rst eld in the IS document type specied for documentType
matches a QName of a header block in the SOAP message but the content of the
header block does not match the elds in the IS document type, then the retrieved
headerDocument fails validation with the error
[ISS.0088.9432] SOAP Header data does not conform to Header Record
See Also
pub.soap.handler:addHeaderBlock
pub.soap.handler:removeHeaderBlock
pub.soap.handler:getHeaderBlockQNames
WmPublic. Returns the QName for each header block in a SOAP message.
Input Parameters
messageContext
742
Odd Header
SOAP Folder
Output Parameters
headerBlockQNames
Usage Notes
You can use the pub.soap.handler:getHeaderBlockQNames to identify the header block
QNames in a SOAP message and then use pub.soap.handler:removeHeaderBlock to remove
specic header blocks.
See Also
pub.soap.handler:removeHeaderBlock
pub.soap.handler:getHeaderElement
WmPublic. Deprecated - Replaced by pub.soap.handler:getHeaderBlock.
Retrieves a header element from a SOAP message.
Input Parameters
messageContext
QName
documentType
743
Even Header
SOAP Folder
If you specify values for QName and documentType , Integration Server uses QName and
ignores documentType .
Example
Suppose that messageContext contains a SOAP message with the following header:
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:user="userHandlerNamespaceName" xmlns:pfx="pfx1namespace"
xmlns:ns1="ns1namespace" xmlns:ns2="ns2namespace">
<SOAP-ENV:Header>
<user:userHandlerLocalName>
<pfx:myLocalName>
<ns1:myField>
<ns2:myFieldValue>someValue</ns2:myFieldValue>
</ns1:myField>
</pfx:myLocalName>
</user:userHandlerLocalName>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
...
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Provided Value
QName
namespaceName
userHandlerNamespaceName
localName
userHandlerLocalName
744
Odd Header
SOAP Folder
Input Parameter
Provided Value
documentType
documentTypes:myHeaderStructure
The structure of documentTypes:myHeaderStructure looks like this:
Namespace
myPrex
pfx1namespace
myNS1
ns1namespace
myNS2
ns2namespace
745
Even Header
SOAP Folder
pub.soap.handler:getInitialSOAPRequest
WmPublic. Gets the initial SOAP request message from a given message context.
Input Parameters
messageContext
746
Odd Header
SOAP Folder
Usage Notes
You can use the initial SOAP request message retrieved by this service in the outbound
callback service. For more information about outbound callback services, see
Web Services Developers Guide.
You can use the SOAP message retrieved by this service with any existing public service
that takes an object of type javax.xml.soap.SOAPMessage as input.
In case of consumer web service descriptors, the pub.soap.handler:getInitialSOAPRequest
service returns the initial outbound SOAP request that Integration Server builds just
before sending the SOAP request to the web service provider.
pub.soap.handler:getMessageAddressingProperties
WmPublic. Gets the message addressing properties of the SOAP message in the
provided message context.
Input Parameters
messageContext
747
Even Header
SOAP Folder
Output Parameters
messageAddressing
Properties
Description
messageID
relatesTo
Description
value
to
from
748
Odd Header
SOAP Folder
faultTo
pub.soap.handler:getProperty
WmPublic. Gets the value of a specied property from a message context.
749
Even Header
SOAP Folder
Input Parameters
messageContext
key
Output Parameters
value
Usage Notes
To access the contents of the service pipeline, use the
pub.soap.handler:getServicePipelineinstead of thepub.soap.handler:getProperty service.
See Also
pub.soap.handler:getServicePipeline
pub.soap.handler:removeProperty
pub.soap.handler:setProperty
pub.soap.handler:getServicePipeline
WmPublic. Gets the service pipeline from a given message context.
Input Parameters
messageContext
750
Odd Header
SOAP Folder
servicePipeline contains...
Request handler
service
Response handler
service
Fault handler
service
servicePipeline contains...
Request handler
service
751
Even Header
SOAP Folder
Fault handler
service
Usage Notes
Use this service to give handler services access to the contents of the pipeline. The
handler service can then pass pipeline contents to another service. For example, during
execution of a handler service for a provider web service descriptor, you can use the
pub.soap.handler:getServicePipeline service to:
Pass pipeline data from the request handler service to the endpoint service.
Pass pipeline data from the endpoint service to the response handler service or fault
handler service.
During execution of a handler service for a consumer web service descriptor, you can
use the pub.soap.handler:getServicePipeline service to:
Pass pipeline data from the web service connector input to the request handler
service.
Pass pipeline data from the response handler service or fault handler service to the
web service connector output
Use the pub.soap.handler:getServicePipeline service to access the pipeline instead of using
thepub.soap.handler:getProperty service to access the servicePipeline property.
pub.soap.handler:getSOAPMessage
WmPublic. Gets the SOAP message from a given message context.
752
Odd Header
SOAP Folder
Input Parameters
messageContext
Output Parameters
SOAPMessage
Usage Notes
You can use the SOAP message retrieved by this service with any existing public
service that takes an object of type javax.xml.soap.SOAPMessage as input. For
example, you can use the SOAP message as input for the pub.soap.utils:addBodyEntry or
pub.soap.utils:addHeaderEntry services.
See Also
pub.soap.handler:setSOAPMessage
pub.soap.handler:getWebServiceInvocationProperties
WmPublic. Fetches the web service invocation properties.
Input Parameters
messageContext
753
Even Header
SOAP Folder
binderName
binding
portType
operationQName
style
Key
Description
namespaceName
localName
use
inbound
soapVersion
754
Odd Header
SOAP Folder
SOAP12
pub.soap.handler:handlerSpec
WmPublic. Specication to use as the signature for a service that acts as a header
handler.
Input Parameters
messageContext
Output Parameters
statusCode
faultMessage
Usage Notes
Services that act as header handlers do not need to use the pub.handler:handlerSpec
specication to dene the signature of the service. However, services that act as header
755
Even Header
SOAP Folder
handlers must take the input parameters and produce the output parameters identied
in this specication.
This specication can be used as the signature for the any handler service (request,
response, or fault).
Integration Server altered handler chain processing in version 8.0 SP1. If
you want created in Integration Server version 7.x of 8.0 to use the handler
chain processing behavior available in Integration Server 7.x and 8.0, set the
wa.server.ws.71xHandlerChainBehavior server conguration parameter to true.
For more information about seing server conguration parameters, see webMethods
Integration Server Administrators Guide.
See Also
pub.soap.handler:registerWmConsumer
pub.soap.handler:registerWmProvider
pub.soap.handler:hasFaultMessage
WmPublic. Determines whether the SOAP message in a given message context contains
a SOAP fault message.
Input Parameters
messageContext
Output Parameters
hasFaultMessage
fault.
756
Odd Header
SOAP Folder
pub.soap.handler:listConsumer
WmPublic. Returns a list of the consumer handlers currently registered on Integration
Server.
Input Parameters
None.
Output Parameters
Handlers
Description
descriptiveName
className
policyType
handleRequestService
757
Even Header
SOAP Folder
Description
namespace
localName
pub.soap.handler:listProvider
WmPublic. Returns a list of the provider handlers currently registered on Integration
Server.
Input Parameters
None.
Output Parameters
Handlers
Description
descriptiveName
className
policyType
758
Odd Header
SOAP Folder
handleRequestService
Headers
Description
namespace
localName
pub.soap.handler:registerConsumer
WmPublic. Deprecated - Replaced by pub.soap.handler:registerWmConsumer.
Registers a handler based on JAX-RPC with a consumer Web service descriptor.
Input Parameters
descriptiveName
759
Even Header
SOAP Folder
handler
handlerInfo
Output Parameters
None.
pub.soap.handler:registerProvider
WmPublic. Deprecated - Replaced by pub.soap.handler:registerWmProvider.
Registers a handler based on JAX-RPC with a provider Web service descriptor.
Input Parameters
descriptiveName
handler
handlerInfo
Output Parameters
None.
pub.soap.handler:registerWmConsumer
WmPublic. Registers a handler for use with consumer.
Input Parameters
descriptiveName
QNameList
handleRequestService
760
Odd Header
SOAP Folder
Output Parameters
None.
Usage Notes
This service replaces pub.soap.handler:registerConsumer, which is deprecated.
Before you register a consumer header handler, create the services that will act as the
request, response, and fault header handlers.
Integration Server stores information about registered header handlers in memory.
Integration Server does not persist registered header handler information across restarts.
Consequently, you must register header handlers each time Integration Server starts. To
accomplish this, create a service that registers a header handler and make that service a
start up service for the package that contains the services that act as header handlers.
You can use a consumer header handler with consumer (WSD) only.
Specify a value for QNameList if you want to associate with handler with one or more
QNames. Registering QNames with a handler provides the following benets:
Integration Server can perform mustUnderstand checking for the header with the
QName at run time. If a service receives a SOAP message in which a header requires
mustUnderstand processing by the recipient, Integration Server uses the header
QName to locate the handler that processes the header. Note that the handler must
be part of the handler chain for the WSD that contains the service.
When adding headers to a WSD, Designer populate the list of IS document types
that can be used as headers in the WSD with the IS document types whose QNames
were registered with the handlers already added to the WSD. If you add a IS
document type as a header to a WSD and the QName of that IS document type is not
associated with a handler, Designer add the header but display a warning stating
that there is not an associated handler.
When consuming WSDL to create a provider or consumer WSD, Integration Server
automatically adds a handler to the resulting WSD if the WSDL contains a QName
supported by the handler.
Use the pub.soap.handler:registerWmProvider service to register a header handler for use with
provider.
To unregister a consumer header handler, use the pub.soap.handler:unregisterConsumer
service.
If you specify a service that does not exist for handleRequest , handleResponse , or
handleFaultService , Integration Server throws this error:
761
Even Header
SOAP Folder
If a registered handler with the same descriptiveName already exists, Integration Server
throws this error.
[ISS.0088.9423] Service handler <handlerName> is already registered.
See Also
pub.soap.handler:registerWmProvider
pub.soap.handler:registerWmProvider
WmPublic. Registers a header handler for use with provider.
Input Parameters
descriptiveName
QNameList
handleRequestService
Output Parameters
None.
Usage Notes
This service replaces pub.soap.handler:registerProvider, which is deprecated.
Before you register a provider header handler, create the services that will act as the
request, response, and fault header handlers.
Integration Server stores information about registered header handlers in memory.
Integration Server does not persist registered header handler information across restarts.
Consequently, you need to register header handlers each time Integration Server starts.
762
Odd Header
SOAP Folder
To accomplish this, create a service that registers a header handler and make that service
a start up service for the package that contains the services that act as header handlers.
You can use a provider header handler with provider only.
Specify a value for QNameList if you want to associate with handler with one or more
QNames. Registering QNames with a handler provides the following benets:
Integration Server can perform mustUnderstand checking for the header with the
QName at run time. If a service receives a SOAP message in which a header requires
mustUnderstand processing by the recipient, Integration Server uses the header
QName to locate the handler that processes the header. Note that the handler must
be part of the handler chain for the WSD that contains the service.
When adding headers to a WSD, Designer populate the list of IS document types
that can be used as headers in the WSD with the IS document types whose QNames
were registered with the handlers already added to the WSD. If you add a IS
document type as a header to a WSD and the QName of that IS document type is not
associated with a handler, Designer add the header but display a warning stating
that there is not an associated handler.
When consuming WSDL to create a provider or consumer WSD, Integration Server
automatically adds a handler to the resulting WSD if the WSDL contains a QName
supported by the handler.
Use the pub.soap.handler:registerProvider service to register a header handler for use with
consumer.
To unregister a provider header handler, use the pub.soap.handler:unregisterProvider service.
If you specify a service that does not exist for handleRequest , handleResponse , or
handleFaultService , Integration Server throws this error:
[ISS.0088.9421] The service <serviceName> does not exist.
If a registered handler with the same descriptiveName already exists, Integration Server
throws this error.
[ISS.0088.9423] Service handler <handlerName> is already registered.
See Also
pub.soap.handler:registerProvider
pub.soap.handler:removeBodyBlock
WmPublic. Removes a body block from a SOAP message, leaving an empty SOAP body,
<SOAP-ENV:Body></SOAP-ENV:Body>.
Input Parameters
messageContext
763
Even Header
SOAP Folder
pub.soap.handler:removeHeaderBlock
WmPublic. Removes a header block from a SOAP message.
Input Parameters
messageContext
QName
764
Odd Header
SOAP Folder
documentType
index
Description
True
False
765
Even Header
SOAP Folder
Usage Notes
This service replaces pub.soap.handler:removeHeaderElement, which is deprecated.
Either QName or documentType must be supplied. If both are provided, Integration
Server uses QName and ignores documentType .
pub.soap.handler:removeHeaderElement
WmPublic. Deprecated - Replaced by pub.soap.handler:removeHeaderBlock.
Removes a header element (block) from a SOAP message.
Input Parameters
messageContext
QName
Output Parameters
status
See Also
pub.soap.handler:addHeaderElement
pub.soap.handler:getHeaderElement
766
Odd Header
SOAP Folder
pub.soap.handler:removeProperty
WmPublic. Removes a property from a message context.
Input Parameters
messageContext
key
Output Parameters
None.
Usage Notes
The SOAP message contains properties reserved for use by Integration Server.
Do not use pub.soap.handler:setProperty to set any of these properties or use
pub.soap.handler:removeProperty to remove any of these properties as it may result in
unpredictable behavior. The reserved properties are:
ContentType
@MESSAGE_USER_FROM_USER_NAME_TOKEN
originalContext
@MESSAGE_USER_FROM_X509_TOKEN
servicePipeline
@TRANSPORT_URL
style
@TRANSPORT_USER
use
767
Even Header
SOAP Folder
See Also
pub.soap.handler:getProperty
pub.soap.handler:setProperty
pub.soap.handler:setProperty
WmPublic. Sets the value of a specic property in a message context.
Input Parameters
messageContext
key
value
Output Parameters
None.
Usage Notes
The SOAP message contains properties reserved for use by Integration Server.
Do not use pub.soap.handler:setProperty to set any of these properties or use
pub.soap.handler:removeProperty to remove any of these properties as it may result in
unpredictable behavior. The reserved properties are:
ContentType
@MESSAGE_USER_FROM_USER_NAME_TOKEN
originalContext
@MESSAGE_USER_FROM_X509_TOKEN
servicePipeline
@TRANSPORT_URL
768
Odd Header
SOAP Folder
style
@TRANSPORT_USER
use
See Also
pub.soap.handler:getProperty
pub.soap.handler:removeProperty
pub.soap.handler:setSOAPMessage
WmPublic. Sets the SOAP message in a message context.
Input Parameters
messageContext
SOAPMessage
Output Parameters
None.
Usage Notes
Use this service with caution, as it overwrites the entire SOAP message, including the
SOAP header, body, and fault.
See Also
pub.soap.handler:getSOAPMessage
pub.soap.handler:unregisterConsumer
WmPublic. Unregisters a consumer web service descriptor handler.
769
Even Header
SOAP Folder
Input Parameters
descriptiveName
Output Parameters
None.
pub.soap.handler:unregisterProvider
WmPublic. Unregisters a provider web service descriptor handler.
Input Parameters
descriptiveName
Output Parameters
None.
pub.soap.handler:updateFaultBlock
WmPublic. Updates the code, subcodes, reasons, node, and role in an existing fault
block.
Input Parameters
messageContext
770
Odd Header
SOAP Folder
soapFault
Description
reasons
code
node
Key
Descriptions
*body
@lang
Description
namespaceName
localName
subCodes
Description
namespaceName
String Namespace
name for the
subcode.
localName
771
Even Header
SOAP Folder
role
Output Parameters
status
You can use this service on a provider response handler or fault handler to update the
fault block so that the values for code, subcodes, reasons, node, and role that Integration
Server generates can be overridden by the custom values you specify.
If you are using this service to override the information in a fault block in a SOAP 1.1
message, keep the following points in mind:
If multiple reasons are specied, Integration Server uses only the rst reason
specied because SOAP 1.1 does not support multiple reasons.
If any subcodes or node values are specied, Integration Server ignores them
because subcodes and node elements are not available in the SOAP 1.1 fault
structure.
See Also
pub.soap.handler:addFaultBlock
pub.soap.handler:getFaultBlock
pub.soap.processor:list
WmPublic. Deprecated - Returns a list of the SOAP processors that are currently
registered on the Integration Server.
Input Parameters
None.
772
Odd Header
SOAP Folder
Output Parameters
list
Description
directive
svcName
descriptiveName
validateSOAPMessage
watt.server.SOAP.validateSOAPMessage
seing.
watt.server.SOAP.validateSOAPMessage
seing.
773
Even Header
SOAP Folder
Notes
This service is deprecated. There is not a replacement service.
See Also
pub.soap.processor:registerProcessor
pub.soap.processor:unregisterProcessor
pub.soap.processor:processMessage
WmPublic. Deprecated - Executes the Integration Server's default SOAP processor.
This service behaves exactly like the built-in default SOAP processor. However, this
service can be wrapped in a ow service, which enables you to create an accesscontrolled SOAP processor.
Input Parameters
soapRequestData
soapResponseData
Object Empty SOAP object that the service will use to compose
the SOAP response message.
Output Parameters
soapResponseData
Usage Notes
This service is deprecated. There is not a replacement service.
You invoke processMessage from a wrapper service that you create and register as a SOAP
processor on the Integration Server. To impose access control on the processor, you
assign an access control list (ACL) to the wrapper service.
pub.soap.processor:processRPCMessage
WmPublic. Deprecated - Executes the Integration Server's SOAP RPC processor.
774
Odd Header
SOAP Folder
This service behaves exactly like the built-in SOAP RPC processor. However, this service
can be wrapped in a ow service, which enables you to create an access-controlled
SOAP processor.
Input Parameters
soapRequestData
soapResponseData
Object Empty SOAP object that the service will use to compose
the SOAP response message.
Output Parameters
soapResponseData
Usage Notes
This service is deprecated. There is not a replacement service.
You invoke processRPCMessage from a wrapper service that you create and register as a
SOAP processor on the Integration Server. To impose access control on the processor,
you assign an access control list (ACL) to the wrapper service.
pub.soap.processor:registerProcessor
WmPublic. Deprecated - Registers a service as a SOAP processor on the Integration
Server.
Input Parameters
directive
svcName
descriptiveName
775
Even Header
SOAP Folder
watt.server.SOAP.validateSOAPMessage seing.
false to bypass validation on messages sent and received by
watt.server.SOAP.validateSOAPMessage seing.
pub.soap.processor:unregisterProcessor
WmPublic. Deprecated - Unregisters a SOAP processor by removing it from the registry.
Input Parameters
directive
776
Odd Header
SOAP Folder
pub.soap.schema:encoding
WmPublic. Schema that denes the data types SOAP supports.
pub.soap.schema:encoding_1_2
WmPublic. Schema that denes the data types SOAP 1.2 supports.
pub.soap.schema:envelope
WmPublic. Schema that denes the structure of a SOAP message.
pub.soap.schema:envelope_1_2
WmPublic. Schema that denes the structure of a SOAP 1.2 message.
pub.soap.utils:addBodyEntry
WmPublic. Inserts an entry into the body element of a SOAP message.
777
Even Header
SOAP Folder
Input Parameters
soapData
Object SOAP object to which you want the body entry added.
bodyEntry
Output Parameters
soapData
Usage Notes
A SOAP object is an object that represents a SOAP message.
If you are composing a new SOAP message, you must rst create an empty SOAP object
(called soapData ) with the createSoapData service and then add your header entries to
with pub.soap.utils:addHeaderEntry.
If you are composing a SOAP response, you use pub.soap.utils:addBodyEntry to populate
the soapResponseData object that the SOAP message handler generates and puts in the
pipeline.
See Also
pub.soap.utils:createSoapData
pub.soap.utils:addBodyEntry
pub.soap.utils:addHeaderEntry
pub.soap.utils:addTrailer
pub.soap.utils:getBody
778
Odd Header
SOAP Folder
Examples
See the following in the WmSamples packages in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.soap:buildMsg_sendHTTP
sample.soap:customProc_msgQuwue
sample.soap:targetSvc_defaultProc
pub.soap.utils:addHeaderEntry
WmPublic. Inserts an entry into the header element of a SOAP message.
Input Parameters
soapData
Object SOAP object to which you want the header entry added.
headerEntry
mustUnderstand
779
Even Header
SOAP Folder
Output Parameters
soapData
Usage Notes
A SOAP object is an object that represents a SOAP message.
If you are composing a new SOAP message, you must rst create an empty SOAP object
(called soapData ) with the createSoapData service and then add your header entries to
with pub.soap.utils:addHeaderEntry.
If you are composing a SOAP response, you use addHeaderEntry to populate the
soapResponseData object that the SOAP message handler generates and puts in the
pipeline.
See Also
pub.soap.utils:createSoapData
pub.soap.utils:addBodyEntry
pub.soap.utils:addTrailer
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
780
Odd Header
SOAP Folder
Examples
See the following in the WmSamples packages in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.soap:buildMsg_sendHTTP
sample.soap:targetSvc_defaultProc
pub.soap.utils:addTrailer
WmPublic. Inserts a trailer in a SOAP message.
(A trailer is an arbitrary element that follows the Body element in the SOAP envelope.)
Important: It appears likely that trailers will not be permied in future versions of SOAP
(versions 1.2 and later). If you are designing a completely new solution, we recommend
that you avoid using trailers. However, if you exchange SOAP messages with older
systems that already make use of trailers, this service allows you to insert them into a
SOAP message.
Input Parameters
soapData
trailer
Output Parameters
soapData
781
Even Header
SOAP Folder
Usage Notes
A SOAP object is an object that represents a SOAP message.
If you are composing a new SOAP message, you must rst create an empty SOAP
object (called soapData ) with the createSoapData service and then add your header
entries to with pub.soap.utils:addHeaderEntry.
If you are composing a SOAP response, you use pub.soap.utils:addHeaderEntry to
populate the soapResponseData object that the SOAP message handler generates and
puts in the pipeline.
See Also
pub.soap.utils:createSoapData
pub.soap.utils:addHeaderEntry
pub.soap.utils:addBodyEntry
pub.soap.utils:getTrailers
pub.soap.utils:callbackServiceSpec
WmPublic. Denes the input signature for an outbound callback service.
Input Parameters
messageContext
Output Parameters
None.
pub.soap.utils:convertToVersionSpecificSOAPFault
WmPublic. Converts the generic SOAP fault structure to the SOAP version-specic fault
structure that is used by web service descriptors created in versions of Integration Server
prior to 8.2.
782
Odd Header
SOAP Folder
Input Parameters
soapProtocol
fault
Output Parameters
SOAPFAULT
Description
soapProtocol
Fault_1_1
Description
faultcode
783
Even Header
SOAP Folder
{namespaceName}localName
In the above, localName is the value of the
code/localName eld and namespaceName is
value of the code/namespaceName eld of the
fault input parameter
faultstring
faultactor
detail
Fault_1_2
Description
SOAPENV:Code
784
Odd Header
SOAP Folder
Document Conditional.
Document containing the
human readable explanation
of the cause of the fault.
The service maps the rst
document of the reasons eld
of the fault input parameter.
@XML:lang
StringConditional.Species
the language
for the human
readable
description. This
eld corresponds
to the xml:lang
aribute of
the Text child
element of the
SOAP1.2 Reason
element.
785
Even Header
SOAP Folder
*body
SOAPENV:Node
String
Conditional.
Text explaining
the cause of the
fault. This eld
corresponds to
the Text child
element of the
SOAP 1.2 Reason
element.
SOAPENV:Role
SOAPENV:Detail
Usage Notes
The following are instances where Integration Server generates a generic SOAP fault
structure that you might want to convert to a SOAP version-specic fault structure:
The fault output parameter from a web service connector generated from a web
service descriptor created in Integration Server 8.2.
The soapFault output parameter from the pub.soap.handler:getFaultBlock service.
The following lists instances where the service might not be able to convert all data in
the generic SOAP fault structure to a corresponding eld in the output.
The data in the code/subcodes eld of the fault input parameter does not map to any
output parameter. As a result, the service does not convert the data for either the
SOAP 1.1 or SOAP 1.2 protocol.
786
Odd Header
SOAP Folder
The service might not be able to map all the data in the reasons eld of the fault input
parameter to the corresponding output parameters. The reasons eld is a Document
List that can represent the reason in multiple languages. However, the output can
represent only a single value.
For the SOAP 1.1 protocol, the service maps the *body from the rst Document of
the fault/reasons input parameter to the Fault_1_1/faultstring output parameter.
For the SOAP 1.2 protocol, the service maps only the rst Document of the fault/
reasons to the output parameter Fault_1_2/SOAP-ENV:Reason/SOAP-Env:Text .
The data in the node eld of the fault input parameter does not map to any element
of the Fault_1_1 output parameter. As a result, the service does not convert the value
for the SOAP 1.1 protocol.
See Also
pub.soap.handler:getFaultBlock
pub.soap.utils:createSoapData
WmPublic. Creates a SOAP object consisting of SOAP envelope, body, and header
entries.
Input Parameters
encoding
addEmptyHeader
787
Even Header
SOAP Folder
SOAP 1.1.
SOAP 1.2.
Output Parameters
soapData
Usage Notes
The encoding parameter can support incoming SOAP messages in any encoding.
Outgoing messages, however, are always encoded in UTF-8.
See Also
pub.soap.utils:addHeaderEntry
pub.soap.utils:addBodyEntry
pub.soap.utils:addTrailer
Examples
See the following in the WmSamples package in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.soap:buildMsg_sendHTTP
pub.soap.utils:createXOPObject
WmPublic. Generates a com.wm.util.XOPObject instance from a base64Binary string, a
byte array, or an input stream.
Input Parameters
contentType
data
Description
788
Odd Header
SOAP Folder
base64String
bytes
stream
Output Parameters
xopObject
Usage Notes
You use the object of type com.wm.util.XOPObject to send or receive data as an MTOM
stream. For more information about MTOM streaming, see Web Services Developers
Guide.
If you specify values for more than one key of the data input parameter, Integration
Server uses only one value in the following order or precedence:
base64String
bytes
stream
For example, if you provide values for base64String , bytes , and stream keys, Integration
Server will execute the pub.soap.utils:createXOPObject service with the base64String value
and will ignore the values provided for bytes and stream keys.
pub.soap.utils:exitUnableToUnderstand
WmPublic. Terminates processing and returns a mustUnderstand fault to the client.
You execute this service when your SOAP processor detects a mandatory header entry
that it cannot process.
789
Even Header
SOAP Folder
Input Parameters
headerEntry
Output Parameters
None.
Usage Notes
This service throws an exception, which is meant to be caught by the message handler so
that the appropriate SOAP fault will be returned to the client. Your processor should not
catch this exception.
pub.soap.utils:getActor
WmPublic. Retrieves the value of the actor aribute (for SOAP 1.1) or the role aribute
(for SOAP 1.2) from a given header entry.
Input Parameters
headerEntry
Output Parameters
actor
See Also
pub.soap.utils:addHeaderEntry
pub.soap.utils:getMustUnderstand
webMethods Integration Server Built-In Services Reference Version 9.6
790
Odd Header
SOAP Folder
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
pub.soap.utils:getBody
WmPublic. Retrieves the body from a SOAP message as a single node object.
Input Parameters
soapData
Output Parameters
body
Usage Notes
This service returns the entire Body element in body. To extract data from the Body
element, query body with the pub.xml:queryXMLNode service.
If you want to extract the body of the message as an array of nodes, use the
pub.soap.utils:getBodyEntries service.
See Also
pub.soap.utils:getBodyEntries
pub.soap.utils:addBodyEntry
Examples
See the following in the WmSamples packages in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.soap:buildMsg_sendHTTP
sample.soap:customProc_msgQueue
sample.soap:targetSvc_defaultProc
pub.soap.utils:getBodyEntries
WmPublic. Retrieves the body entries from a SOAP message as an array of node objects.
791
Even Header
SOAP Folder
Input Parameters
soapData
Output Parameters
bodyEntries
Usage Notes
This service returns each body entry as a separate node. You can loop over bodyEntries
and extract data from each node with the pub.xml:queryXMLNode service.
If you want to extract the body of the message as a single node, use the
pub.soap.utils:getBody service.
See Also
pub.soap.utils:getBody
pub.soap.utils:addBodyEntry
pub.soap.utils:getDocument
WmPublic. Retrieves an entire SOAP message as a node object.
This service is useful when you want to use pub.xml:queryXMLNode to query an entire
SOAP message. Since queryXMLNode requires a node as input, you cannot use it to query
a SOAP object directly. Instead, you must convert the SOAP object to a node and then
query the resulting node.
Input Parameters
soapData
Output Parameters
node
792
Odd Header
SOAP Folder
See Also
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
pub.soap.utils:getTrailers
pub.soap.utils:getEncoding
WmPublic. Retrieves the encoding from a SOAP message as a single string.
Input Parameters
soapData
Output Parameters
encoding
See Also
pub.soap.utils:getHeaderEntries
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
"pub.soap.utils:getDocument" on page 792
pub.soap.utils:getTrailers
pub.soap.utils:addHeaderEntry
pub.soap.utils:getHeader
WmPublic. Retrieves the header from a SOAP message as a single node object.
Input Parameters
soapData
793
Even Header
SOAP Folder
Output Parameters
header
Usage Notes
This service returns the entire Header element in header. To extract data from the Header
element, query header with the pub.xml:queryXMLNode service. If you want to extract the
contents of the header as an array of nodes, use the pub.soap.utils:getHeaderEntries service.
See Also
pub.soap.utils:getHeaderEntries
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
pub.soap.utils:getTrailers
pub.soap.utils:addHeaderEntry
Examples
See the following in the WmSamples package in the certied samples area of
the Knowledge Center on the Empower Product Support website at hps://
empower.softwareag.com:
sample.soap:customProc_msgQueue
pub.soap.utils:getHeaderEntries
WmPublic. Retrieves the header entries from a SOAP message as an array of node
objects.
This service is useful when you want to build a process that loops through all the
header entries in a message and identify entries with specic QNames (using the
pub.soap.utils:getQName service) or actor aributes (using the pub.soap.utils:getActor service).
Input Parameters
soapData
794
Odd Header
SOAP Folder
Output Parameters
headerEntries
Usage Notes
This service returns each header entry as a separate node. You can loop over
headerEntries and extract data from each node with the pub.xml:queryXMLNode service
or get the entry's QName and/or actor value using the pub.soap.utils:getQName and
pub.soap.utils:getActor services.
If you want to extract the message header as a single node, use the pub.soap.utils:getHeader
service.
See Also
pub.soap.utils:getHeader
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
pub.soap.utils:getDocument
pub.soap.utils:addHeaderEntry
pub.soap.utils:getActor
pub.soap.utils:getQName
pub.soap.utils:getMustUnderstand
WmPublic. Returns the mustUnderstand status for a given header entry.
The mustUnderstand status species whether recipients are required to process a header
entry (that is, whether processing of the entry is mandatory or optional). Recipients that
cannot process a mandatory header entry must reject the message and return a SOAP
fault. (See the pub.soap.utils:exitUnableToUnderstand service.)
Input Parameters
headerEntry
795
Even Header
SOAP Folder
Usage Notes
For additional information about the mustUnderstand aribute, see the Simple Object
Access Protocol (SOAP) 1.1 - W3C Note 08 May 2000 at hp://www.w3.org/TR/SOAP/
and for SOAP 1.2, see the SOAP 1.2 W3C Recommendation 27 April 2007 at hp://
www.w3.org/TR/soap12-part1/.
See Also
pub.soap.utils:addHeaderEntry
pub.soap.utils:getActor
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
pub.soap.utils:exitUnableToUnderstand
pub.soap.utils:getQName
WmPublic. Returns the qualied name for a given node.
Input Parameters
node
Output Parameters
Qname
796
Odd Header
SOAP Folder
Key
Description
namespaceName
localName
Usage Notes
Generally, you use this service in conjunction with the pub.soap.utils:getHeaderEntries or
pub.soap.utils:getBodyEntries service to loop over the message's header or body entries and
identify entries with a particular qualied name.
See Also
pub.soap.utils:getBodyEntries
pub.soap.utils:getHeaderEntries
pub.soap.utils:getTrailers
WmPublic. Retrieves the trailers from a SOAP message.
(A trailer is an arbitrary element that follows the Body element in the SOAP envelope.)
Important: It appears likely that trailers will not be permied in future versions of SOAP
(versions 1.2 and later). If you are designing a completely new solution, we recommend
that you avoid using trailers. However, if you exchange SOAP messages with older
systems that already make use of trailers, this service allows you to retrieve them from a
SOAP message.
Input Parameters
soapData
Output Parameters
trailers
See Also
pub.soap.utils:addTrailer
webMethods Integration Server Built-In Services Reference Version 9.6
797
Even Header
SOAP Folder
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
pub.soap.utils:getDocument
pub.soap.utils:getXOPObjectContent
WmPublic. Retrieves the contents of a com.wm.util.XOPObject instance as a
base64Binary string, a byte array, or an InputStream.
Input Parameters
xopObject
getAs
To...
base64String
bytes
stream
Output Parameters
contentType
data
798
Odd Header
SOAP Folder
Description
base64String
bytes
stream
Usage Notes
You use the object of type com.wm.util.XOPObject to send or receive data as an MTOM
stream. For more information about MTOM streaming, see Web Services Developers
Guide.
The content of the XOPObject can only be read one time. After you use the
pub.soap.utils:getXOPObjectContent service to read the XOPObject content one time,
subsequent aempts to re-read the XOPObject content will fail. It is recommended that
after the XOPObject content is read that you drop it from the pipeline to make it clear to
programming logic downstream that it is no longer available to be read.
When you set the getAs input parameter to stream so that the service
returns the contents of the com.wm.util.XOPObject instance as a stream, the
pub.soap.utils:getXOPObjectContent service does not automatically close the stream object.
You can close the stream using the pub.io:close service.
pub.soap.utils:QName
WmPublic. Document type that denes the structure of a qualied name.
Parameters
namespaceName
799
Even Header
SOAP Folder
localName
pub.soap.utils:removeBodyEntry
WmPublic. Deletes a body entry from a SOAP message.
Input Parameters
soapData
Object SOAP object containing the body entry that you want to
delete.
bodyEntry
index
Output Parameters
None.
Usage Notes
When you use the bodyEntry parameter, be sure that it species the correct node. This
service deletes whatever node is specied in bodyEntry , even if the node is not a body
entry. For example, if bodyEntry contains the whole Body element, removeBodyEntry will
delete the body of the message.
Be aware that if you use the index parameter to delete an entry, you will change the
index numbers (positions) of all entries following the one you deleted. For example,
if your message contains four body entries (0, 1, 2, 3) and you delete entry 1, then the
entries originally at positions 2 and 3 will subsequently occupy positions 1 and 2.
See Also
pub.soap.utils:removeHeaderEntry
pub.soap.utils:removeTrailer
pub.soap.utils:addBodyEntry
pub.soap.utils:getBody
pub.soap.utils:getBodyEntries
800
Odd Header
SOAP Folder
pub.soap.utils:removeHeaderEntry
WmPublic. Deletes a header entry from a SOAP message.
Input Parameters
soapData
Object SOAP object containing the header entry that you want
to delete.
headerEntry
index
Output Parameters
None.
Usage Notes
When you use the headerEntry parameter, be sure that it species the correct node. This
service deletes whatever node is specied in headerEntry , even if the node is not a header
entry. For example, if headerEntry contains the whole Header element, removeHeaderEntry
will delete the entire header from the message.
Note: Be aware that if you use the index parameter to delete an entry, you will change
the index numbers (positions) of all entries following the one you deleted. For example,
if your header contains four entries (0, 1, 2, 3) and you delete entry 1, then the entries
originally at positions 2 and 3 will subsequently occupy positions 1 and 2.
See Also
pub.soap.utils:removeBodyEntry
pub.soap.utils:removeTrailer
pub.soap.utils:addHeaderEntry
pub.soap.utils:getHeader
pub.soap.utils:getHeaderEntries
801
Even Header
SOAP Folder
pub.soap.utils:removeTrailer
WmPublic. Deletes a trailer from a SOAP message.
Input Parameters
soapData
trailer
index
Output Parameters
None.
Usage Notes
When you use the trailer parameter, be sure that it species the correct node. This
service deletes whatever node is specied in trailer , even if the node is not a trailer. For
example, if trailer contains the Body element, removeTrailer will delete the entire body of
the message.
Note: Be aware that if you use the index parameter to delete a trailer, you will change the
index numbers (positions) of all trailers following the one you deleted. For example, if
your message contains four trailers (0, 1, 2, 3) and you delete trailer 1, then the trailers
originally at positions 2 and 3 will subsequently occupy positions 1 and 2.
See Also
pub.soap.utils:removeHeaderEntry
pub.soap.utils:removeBodyEntry
pub.soap.utils:addTrailer
pub.soap.utils:getTrailers
802
Odd Header
SOAP Folder
pub.soap.utils:requestResponseSpec
WmPublic. Denes the input/output signature for a custom processor and a target
service for the default processor.
Input Parameters
soapRequestData
soapResponseData
Output Parameters
soapResponseData
pub.soap.utils:resetWSDEffectivePolicy
WmPublic. Returns the eective policy for a handler in a web service descriptor to the
policy set in the Policy name property in Software AG Designer.
Input Parameters
wsdName
String The name of the web service descriptor for which you
want to reset the eective policy.
Note: The resetWSDEffectivePolicy service applies only to web
services that run in pre-8.2 compatibility mode (i.e., the Pre-8.2
compatibility mode property is set to true).
handlerName
String The name of the handler for which you want to reset the
eective policy.
Output Parameters
None.
803
Even Header
SOAP Folder
Usage Notes
You can also use Designer to reset the eective policy. In Designer, open the web service
descriptor, select the handler on the Handlers view, and modify the value of Effective
policy name property assigned to the handler.
The pub.soap.utils:resetWSDEffectivePolicy service throws an exception if the provided inputs
are invalid.
See Also
pub.soap.utils.setWSDEffectivePolicy
pub.soap.utils.setWSDEffectivePolicy
WmPublic. Sets the eective policy for a handler in a web service descriptor.
Input Parameters
wsdName
String The name of the web service descriptor for which you
want to set the eective policy.
The setWSDEffectivePolicy service applies only to web services that
run in pre-8.2 compatibility mode (i.e., the Pre-8.2 compatibility
mode property is set to true).
handlerName
String The name of the handler for which you want to set the
eective policy.
eectivePolicyID
String The unique identier for the policy that you want to use
with the handler in the web service descriptor.
Output Parameters
None.
Usage Notes
The pub.soap.utils.setWSDEffectivePolicy service overrides the policy originally assigned to
the handler in the web service descriptor.
The pub.soap.utils.setWSDEffectivePolicy service applies to provider web service descriptors
as well as consumer web service descriptors.
The pub.soap.utils.setWSDEffectivePolicy service throws an exceptions if the provided input is
incorrect. The service also veries that the provided eective policy actually exists.
804
Odd Header
SOAP Folder
You can also use Designer to set the eective policy. In Designer, open the web service
descriptor, select the handler in the Handlers view, and modify the value of Effective policy
name property assigned to the handler.
You can reset the eective policy using the pub.soap.utils:resetWSDEffectivePolicy service.
See Also
pub.soap.utils:resetWSDEffectivePolicy
pub.soap.utils:soapDataToBytes
WmPublic. Converts a SOAP object to a Byte Array.
This is useful when you want to use the message with a process that requires the
message to be in the form of a Byte Array.
Input Parameters
soapData
Output Parameters
bytes
See Also
pub.soap.utils:soapDataToString
pub.soap.utils:streamToSoapData
pub.soap.utils:stringToSoapData
pub.soap.utils:soapDataToString
WmPublic. Converts a SOAP object to a String.
This is useful when you want to use the message with a process that requires the
message to be in the form of a String.
Input Parameters
soapData
805
Even Header
SOAP Folder
Output Parameters
string
See Also
pub.soap.utils:soapDataToBytes
pub.soap.utils:streamToSoapData
pub.soap.utils:stringToSoapData
pub.soap.utils:soapFault
WmPublic. Document type that denes the generic SOAP fault structure used by web
service descriptors created in Integration Server 8.2 and later.
Parameters
code
Description
namespaceName
localName
subCodes
reasons
Document List Reasons for the SOAP fault. Each Document in the
Document List contains a human readable explanation of the
cause of the fault.
Key
Description
*body
806
Odd Header
SOAP Folder
@lang
node
String Optional. URI to the SOAP node where the fault occurred.
role
String Optional. Role in which the node was operating at the point
the fault occurred.
detail
pub.soap.utils:streamToSoapData
WmPublic. Converts an InputStream containing a SOAP message to a SOAP object.
(A SOAP message must be represented as a SOAP object to be used with the dataretrieval services such as pub.soap.utils:getHeader and pub.soap.utils:getBody).
Note: This service is a convenient way to produce a SOAP object during development
and testing. It is not meant to be used for production purposes because it does not ensure
that a valid SOAP message is produced. For production purposes, we recommend that
you create SOAP objects with the pub.soap.utils:createSoapData service and populate them
with the message-composition services (for example, pub.soap.utils:addBodyEntry and
pub.soap.utils:addHeaderEntry).
Input Parameters
stream
soapProtocol
SOAP 1.1.
SOAP 1.2.
Output Parameters
soapData
807
Even Header
SOAP Folder
Usage Notes
Be aware that if stream does not contain a valid SOAP message, this service does not
throw an exception. Instead, it produces a soapData that contains a representation of
whatever it received in stream (which might not even be an XML document). This will
cause problems later when you aempt to use the soapData with other SOAP utilities or
pass it to the message handler. To determine whether soapData represents a valid SOAP
message, we recommend that you always execute the pub.soap.utils:validateSoapData service
immediately after using streamToSoapData.
See Also
pub.soap.utils:soapDataToBytes
pub.soap.utils:stringToSoapData
pub.soap.utils:validateSoapData
pub.soap.utils:stringToSoapData
WmPublic. Converts a String containing a SOAP message to a SOAP object.
(A SOAP message must be represented as a SOAP object to be used with the dataretrieval services such as pub.soap.utils:getHeader and pub.soap.utils:getBody).
Note: This service is a convenient way to produce a SOAP object during development
and testing. It is not meant to be used for production purposes because it does not ensure
that a valid SOAP message is produced. Additionally, producing a SOAP object from a
String is a very time-consuming process. For production purposes, we recommend that
you create SOAP objects with the such as pub.soap.utils:getHeader and pub.soap.utils:getBody).
Input Parameters
string
soapProtocol
SOAP 1.1.
SOAP 1.2.
addEmptyHeader
808
Odd Header
SOAP Folder
See Also
pub.soap.utils:soapDataToBytes
pub.soap.utils:streamToSoapData
pub.soap.utils:validateSoapData
pub.soap.utils:validateSoapData
WmPublic. Veries that a SOAP object represents a valid SOAP message.
You can use this service to validate a SOAP object that was generated directly from an
InputStream or String with pub.soap.utils:stringToSoapData or pub.soap.utils:streamToSoapData.
If soapData does not contain a valid SOAP message, validateSoapData will throw an
exception.
This service validates the SOAP object against the schema in pub.soap.schema:envelope.
Input Parameters
soapData
Output Parameters
None.
809
Even Header
SOAP Folder
Usage Notes
If you create SOAP objects using the standard message-composition services (for
example, pub.soap.utils:createSoapData, pub.soap.utils:addBodyEntry, pub.soap.utils:addHeaderEntry)
there is no need to use this service. This service is only necessary when you generate a
SOAP object directly from an InputStream or a String.
When validating SOAP, Integration Server uses the W3C recommendation XML Schema
Part 2: Datatypes. If you want to validate the input of this service for illegal values in the
SOAP envelope and header, set the wa.core.validation.w3cConformant conguration
parameter to true. For information about seing this conguration parameter, see
webMethods Integration Server Administrators Guide.
See Also
pub.soap.utils:stringToSoapData
pub.soap.utils:streamToSoapData
pub.soap.wsa:action
WmPublic. Document type that denes the contents of the wsa:Action WS-Addressing
header.
Parameters
wsa:Action
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:Action header of a SOAP message,
use pub.soap.wsa:action as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:faultTo
WmPublic. Document type that denes the contents of the wsa:FaultTo WSAddressing header.
810
Odd Header
SOAP Folder
Parameters
wsa:FaultTo
Description
wsa:Address
wsa:Reference
Parameters
wsa:Metadata
*any
Key
Description
*body
Description
*any
Description
*any
Usage Notes
To add, retrieve, or remove the wsa:FaultTo header of a SOAP message,
use pub.soap.wsa:faultTo as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
811
Even Header
SOAP Folder
pub.soap.wsa:from
WmPublic. Document type that contains the details of the source of the message.
Parameters
wsa:From
Description
wsa:Address
wsa:Reference
Parameters
wsa:Metadata
*any
Key
Description
*body
Description
*any
Description
*any
Usage Notes
To add, retrieve, or remove the wsa:From header of a SOAP message,
use pub.soap.wsa:from as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
812
Odd Header
SOAP Folder
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:messageID
WmPublic. Document type that denes the contents of the wsa:MessageID WSAddressing header.
Parameters
wsa:MessageID
Description
*body
Usage Notes
To add, retrieve, or remove thewsa:MessageID header of a SOAP message,
use pub.soap.wsa:messageID as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:problemAction
WmPublic. Document type that captures additional information about faults.
Parameters
wsa:ProblemAction
Description
wsa:Action
Description
813
Even Header
SOAP Folder
*body
pub.soap.wsa:problemHeaderQName
WmPublic. Document type that captures additional information about faults.
Parameters
wsa:ProblemHeader
QName
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:ProblemHeaderQName header of a SOAP
message, use pub.soap.wsa:problemHeaderQName as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:problemIRI
WmPublic. Document type that captures the IRI that caused the problem.
814
Odd Header
SOAP Folder
Parameters
wsa:ProblemIRI
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:ProblemIRI header of a SOAP message,
use pub.soap.wsa:problemIRI as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:relatesTo
WmPublic. Document type that denes the contents of the wsa:RelatesTo WSAddressing header.
Parameters
wsa:RelatesTo
Description
@Relationship
Type
*body
Usage Notes
To add, retrieve, or remove the wsa:RelatesTo header of a SOAP message,
use pub.soap.wsa:relatesTo as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
815
Even Header
SOAP Folder
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:replyTo
WmPublic. Document type that denes the contents of the wsa:ReplyTo WSAddressing header.
Parameters
wsa:ReplyTo
Description
wsa:Address
wsa:Reference
Parameters
wsa:Metadata
*any
Key
Description
*body
Description
*any
Description
*any
816
Odd Header
SOAP Folder
Usage Notes
To add, retrieve, or remove the wsa:ReplyTo header of a SOAP message,
use pub.soap.wsa:replyTo as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:retryAfter
WmPublic. Document type that you can use to retrieve the wsa:RetryAfter header of a
SOAP message.
Parameters
wsa:RetryAfter
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:RetryAfter header of a SOAP message,
use pub.soap.wsa:retryAfter as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:to
WmPublic. Document type that denes the contents of the wsa:To WS-Addressing
header.
817
Even Header
SOAP Folder
Parameters
wsa:To
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:To header of a SOAP message, use pub.soap.wsa:to
as the value for the documentType input parameter of the pub.soap.handler:addHeaderBlock,
pub.soap.handler:getHeaderBlock, and pub.soap.handler:removeBodyBlock services.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa:schema_wsa
WmPublic. A schema containing the elements from http://www.w3.org/2005/08/
addressing namespace.
pub.soap.wsa.submission:action
WmPublic. Document type that denes the contents of the wsa:Action WS-Addressing
header.
Parameters
wsa:Action
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:Action header of a SOAP message,
use pub.soap.wsa.submission:action as the value for the documentType input
818
Odd Header
SOAP Folder
pub.soap.wsa.submission:faultTo
WmPublic. Document type that denes the contents of the wsa:FaultTo WSAddressing header.
Parameters
wsa:FaultTo
Description
wsa:Address
wsa:Reference
Properties
wsa:Reference
Parameters
Key
Description
*body
Description
*any
Description
819
Even Header
SOAP Folder
*any
wsa:PortType
wsa:Service
Name
*any
Description
*body
Description
@PortName
*body
Usage Notes
To add, retrieve, or remove the wsa:FaultTo header of a SOAP message,
use pub.soap.wsa.submission:faultTo as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:faultTo document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
820
Odd Header
SOAP Folder
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:from
WmPublic. Document type that contains the details about the source of the message.
Parameters
wsa:From
Description
wsa:Address
wsa:Reference
Properties
wsa:Reference
Parameters
wsa:PortType
Key
Description
*body
Description
*any
Description
*any
821
Even Header
SOAP Folder
wsa:Service
Name
Key
Description
*body
Description
@PortName
*body
<wsdl:service> denition
*any
Usage Notes
To add, retrieve, or remove the wsa:From header of a SOAP message, use
pub.soap.wsa.submission:from as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:from document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:messageID
WmPublic. Document type that denes the contents of the wsa:MessageID WSAddressing header.
822
Odd Header
SOAP Folder
Parameters
wsa:MessageID
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:MessageID header of a SOAP message,
use pub.soap.wsa.submission:messageID as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:messageID document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:relatesTo
WmPublic. Document type that denes the contents of the wsa:RelatesTo WSAddressing header.
Parameters
wsa:RelatesTo
Description
Usage Notes
To add, retrieve, or remove the wsa:RelatesTo header of a SOAP message,
use pub.soap.wsa.submission:relatesTo as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
823
Even Header
SOAP Folder
pub.soap.wsa.submission:replyTo
WmPublic. Document type that species the destination to which the response message
is to be sent.
Parameters
wsa:FaultTo
Description
wsa:Address
wsa:Reference
Properties
wsa:Reference
Parameters
Key
Description
*body
Description
*any
Description
824
Odd Header
SOAP Folder
*any
wsa:PortType
wsa:Service
Name
Description
*body
Description
@PortName
*body
<wsdl:service> denition
*any
Usage Notes
To add, retrieve, or remove the wsa:ReplyTo header of a SOAP message,
use pub.soap.wsa.submission:replyTo as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:replyTo document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
825
Even Header
SOAP Folder
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:retryAfter
WmPublic. Document type that you can use to retrieve the wsa:RetryAfter header of a
SOAP message.
Parameters
wsa:RetryAfter
Description
*body
Usage Notes
To add, retrieve, or remove the wsa:RetryAfter header of a SOAP message,
use pub.soap.wsa.submission:retryAfter as the value for the documentType input
parameter of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:retryAfter document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:to
WmPublic. Document type that denes the contents of the wsa:To WS-Addressing
header.
Parameters
wsa:To
Description
826
Odd Header
SOAP Folder
*body
Usage Notes
To add, retrieve, or remove the wsa:To header of a SOAP message, use
pub.soap.wsa.submission:to as the value for the documentType input parameter
of the pub.soap.handler:addHeaderBlock, pub.soap.handler:getHeaderBlock, and
pub.soap.handler:removeBodyBlock services.
The pub.soap.wsa.submission:to document type relates to the W3C WS-Addressing
Submission version of WS-Addressing specication.
For more details about how Integration Server implements WS-Addressing, see the
Web Services Developers Guide.
pub.soap.wsa.submission:schema_wsa_submission
WmPublic. A schema containing the elements from http://schemas.xmlsoap.org/
ws/2004/08/addressing namespace.
pub.soap.wsrm:closeSequence
WmPublic. Closes a reliable messaging sequence.
Input Parameters
serverSequenceId
Output Parameters
fault
transportInfo
827
Even Header
SOAP Folder
Description
requestHeaders
responseHeaders
status
statusMessage
pub.soap.wsrm:createSequence
WmPublic. Sends a request to a reliable messaging destination to create a new reliable
messaging sequence.
828
Odd Header
SOAP Folder
Input Parameters
consumer
WebService
DescriptorName
_port
String Species the port that Integration Server uses to resolve the
endpoint address with which the reliable messaging sequence is to
be established.
sequenceKey
acksTo
Description
address
Description
829
Even Header
SOAP Folder
value
auth
Description
transport
Description
type
user
pass
830
Odd Header
SOAP Folder
timeout
_url
String Optional. URL to use as the endpoint URL for the web
service. If supplied, the value of _url overwrites the endpoint URL
in the original WSDL.
transportHeaders
831
Even Header
SOAP Folder
fault
transportInfo
Description
requestHeaders
responseHeaders
832
Odd Header
SOAP Folder
statusMessage
pub.soap.wsrm:sendAcknowledgementRequest
WmPublic. Requests an acknowledgment for a message sequence.
Input Parameters
serverSequenceId
Output Parameters
fault
transportInfo
Description
833
Even Header
SOAP Folder
requestHeaders
responseHeaders
status
statusMessage
pub.soap.wsrm:terminateSequence
WmPublic. Terminates a reliable messaging sequence.
Input Parameters
serverSequenceId
Output Parameters
fault
834
Odd Header
SOAP Folder
Description
requestHeaders
responseHeaders
status
statusMessage
835
Even Header
SOAP Folder
pub.soap.wsrm:waitUntilSequenceCompleted
WmPublic. Instructs Integration Server to wait for a reliable messaging sequence to
complete before terminating it.
Input Parameters
serverSequenceId
maxWaitingTime
Output Parameters
fault
transportInfo
Description
836
Odd Header
SOAP Folder
requestHeaders
responseHeaders
status
statusMessage
837
Even Header
838
Odd Header
Storage Folder
32 Storage Folder
About the Storage Elements ......................................................................................................
840
841
843
844
839
Even Header
Storage Folder
You use the elements in the storage folder to create, close, and delete data stores in the
Integration Server short-term store.
840
Odd Header
Storage Folder
If you have already created the IS Internal database component and the VALUE column
is not wide enough to accommodate your pub.storage data, use DB2 commands to
modify the width of the VALUE column in the IS_DATASTORE table.
Locking Considerations
The following sections describe in general how the pub.storage services handle locking
requests. See the individual service descriptions for more detailed information.
Entry Locking
To maintain data integrity, the short-term store uses locking to ensure that multiple
threads do not modify the same entry at the same time. For insertions and removals, the
short-term store sets and releases the lock. For updates, the client must set and release
the lock. Using locking improperly, that is, creating a lock but not releasing it, can cause
deadlocks in the short-term store.
The following guidelines can help you avoid short-term store deadlock:
Release locks in the thread through which they were set. In other words, you cannot
set a lock in one thread and release it in another. The safest way to do this is to
release each lock in the ow service that acquired it.
Unlock entries before the ow completes. Entries remain locked until released via
a put (pub.storage:put) or an explicit unlock (pub.storage:unlock). To accomplish this,
always pair a call to pub.storage:get or pub.storage:lock with a call to pub.storage:put or
pub.storage:unlock so that every lock is followed by an unlock. In addition, use a TryCatch paern in your ow service so that an exception does not prevent the ow
service from continuing and releasing the lock.
Set limits on how long the threads will wait for a lock to be set or released. By seing
nite limits, you allow the pub.storage service to release locks after a set amount of
time and thereby avoid a deadlock situation. For more information, see "Wait Time
and Duration" on page 842.
Following these guidelines might not be sucient in some situations. For example,
an Integration Server or hardware crash might result in a prematurely terminated
ow service, thereby leaving an outstanding lock on the pub.storage service. Or, a client
ow service might hang while requesting a lock. In these situations, having limits on
how long a lock can exist (duration) or how long a lock request will wait (wait time) can
prevent an application deadlock while using pub.storage services. For more information
about lock duration and wait time, see "Wait Time and Duration" on page 842.
841
Even Header
Storage Folder
entire data store and the entries it contains while your thread is working with the entry.
When the locked entry is unlocked, the implicit lock on the data store is also released.
Be careful when explicitly unlocking data stores. Consider the following example:
1. User_A locks an item. This creates two locks: an explicit lock on the entry, and an
implicit lock on the data store.
2. User_A later unlocks the data store explicitly while still holding the lock on the
entry.
3. User_B locks, then deletes the data store, including the entry locked by User_A in the
rst step.
When User_A explicitly unlocked the data store in step 2, User_B was able to delete the
entry the User_A was working with.
842
Odd Header
Storage Folder
843
Even Header
Storage Folder
pub.storage:add
pub.storage:closeStore
pub.storage:deleteStore
pub.storage:get
pub.storage:keys
pub.storage:listLocks
pub.storage:lock
pub.storage:put
pub.storage:registerStore
pub.storage:releaseLocks
pub.storage:remove
844
Odd Header
Storage Folder
Element
pub.storage:shutdown
pub.storage:startup
pub.storage:unlock
pub.storage:add
WmPublic. Inserts a new entry into a data store.
If the key already exists in the data store, the pub.storage:add service does nothing.
Input Parameters
storeName
key
value
Output Parameters
result
845
Even Header
Storage Folder
pub.storage:closeStore
WmPublic. Obsolete Closes a data store and unregisters the data store with the server.
If the data store is not registered with the server, an exception will be thrown. A data
store cannot be accessed after it has been unregistered. If you want to access the data in
the data store, you need to register the data store again using pub.storage:registerStore.
Input Parameters
storeName
Output Parameters
None.
Usage Notes
This service is obsolete. When the repository was removed for Integration Server version
7.1.2, this service became a NOP (no operation).
pub.storage:deleteStore
WmPublic. Deletes a data store and all its contents. Any data in the data store is deleted.
If the data store does not exist, the service takes no action.
Input Parameters
storeName
waitLength
Output Parameters
count
846
Odd Header
Storage Folder
Usage Notes
This service obtains an exclusive lock on the data store, but no locks on the individual
entries in the data store.
If this service nds a shared lock from the same thread on the data store, the service will
automatically promote the lock to an exclusive lock.
The exclusive lock prevents other threads from acquiring locks on the data store or
entries within the data store during the delete operation.
pub.storage:get
WmPublic. Retrieves a value from a data store and locks the entry and the data store on
behalf of the thread that invoked the service.
Important: This service does not automatically release the lock on the data store
or entry after performing the get operation, so you need to make sure the lock is
released by calling the pub.storage:put or pub.storage:unlock service. If you do not release
the lock, other threads will not be able to access the resource until Integration
Server automatically releases the lock after the amount of time specied on the
wa.server.storage.lock.maxDuration property has passed.
Input Parameters
storeName
String Name of the data store from which you want to retrieve
the entry.
key
waitLength
lockMode
updating the entry while you are using it. The service also
obtains a shared lock on the data store. An exclusive lock on
an entry allows you to modify the entry.
847
Even Header
Storage Folder
a shared lock.
Usage Notes
If you request an exclusive lock and the service nds a shared lock from the same thread
on the entry, the service will automatically promote the shared lock on the entry to an
exclusive lock.
When this service locks an entry, it also acquires a shared lock on the associated data
store to prevent another thread from deleting the data store, and the entries it contains,
while your thread has the entry locked.
When storing and retrieving the ow state in the short-term store for checkpoint restart
purposes, be sure the value of key is unique to the transaction.
pub.storage:keys
WmPublic. Obtains a list of all the keys in a data store.
Input Parameters
storeName
String Name of the data store from which you want to obtain a
list of keys.
Output Parameters
keys
848
Odd Header
Storage Folder
pub.storage:listLocks
WmPublic. Lists all pub.storage locks held by the supplied lock holder or target. If no
input is supplied, the service returns a list of all pub.storage locks.
Input Parameters
holder
target
Output Parameters
locks
Description
id
target
holder
type
count
time
849
Even Header
Storage Folder
pub.storage:lock
WmPublic. Locks an entry and/or data store on behalf of the thread invoking this
service.
Important: When you lock an entry or data store using this service, you must release
the lock by using a put (pub.storage:put) or an explicit unlock (pub.storage:unlock). If you
do not release the lock, other threads will not be able to access the resource until
Integration Server automatically releases the lock after the amount of time specied on
the wa.server.storage.lock.maxDuration parameter has passed.
Important: Be careful when releasing locks with the pub.storage:unlock service. If you
release a lock on a data store, another thread can obtain a lock on the data store and
delete it, and the entries it contains, even if your thread still has locks on one or more of
the entries.
Input Parameters
storeName
key
waitLength
850
Odd Header
Storage Folder
a shared lock.
851
Even Header
Storage Folder
If you request a shared lock on an entry or a data store and this service nds an
exclusive lock from the same thread, the existing exclusive lock will be reused. The
exclusive lock will not be demoted to a shared lock.
If you request an exclusive lock on a data store, and this service nds a shared lock from
the same thread on the data store, the service will automatically promote the shared lock
on the data store to an exclusive lock.
pub.storage:put
WmPublic. Inserts or updates an entry in a data store. If the key does not exist in the
data store, the entry is inserted.
If the requested entry is not currently locked by the thread that invoked this service, the
pub.storage:put service will automatically aempt to lock the entry for the duration of the
put operation.
The service obtains an exclusive lock on the entry and a shared lock on the data store.
If the service nds a shared lock from the same thread on the entry, the service will
automatically promote the shared lock to an exclusive lock.
This service releases the lock when the put operation has completed.
Input Parameters
storeName
String Name of the data store into which you want to insert or
update the entry.
value
waitLength
key
852
Odd Header
Storage Folder
Output Parameters
error
Usage Notes
When storing and retrieving the ow state in the short-term store for checkpoint restart
purposes, be sure the value of key is unique to the transaction.
pub.storage:registerStore
WmPublic. Obsolete Opens or creates a data store and registers the store with the
server.
A data store must be registered before it can be accessed. If the store is already
registered with the server, this service does nothing.
Input Parameters
storeName
Output Parameters
None.
pub.storage:releaseLocks
WmPublic. Releases all pub.storage locks held by the identied lock holders and ids. If
both holders and ids are specied, the service ignores the holders and uses IDs.
This service is intended primarily for administrators. It is most useful when used in
combination with pub.storage:listLocks. You can map the locks/holder string list from
that service to the holders input variable in this service or the locks/id string list to the
ids input variables. If neither ids nor holders are supplied, no locks are released.
Important: Use this service with care. It will release locks held by active threads and could
cause their processing to fail. In addition, if you release a lock on a data store, another
thread can obtain a lock on the data store and delete it, and the entries it contains, even
if the original thread still has locks on one or more of the entries.
853
Even Header
Storage Folder
Input Parameters
holders
ids
Output Parameters
count
pub.storage:remove
WmPublic. Removes an entry from a data store. This service obtains an exclusive lock on
the entry and a shared lock on the data store.
Input Parameters
storeName
key
waitLength
Output Parameters
result
854
Odd Header
Storage Folder
pub.storage:shutdown
WmPublic. Releases internal resources used by the pub.storage services. This service is
run automatically when the WmPublic package is unloaded and should not be explicitly
invoked by a client.
pub.storage:startup
WmPublic. Performs initialization of internal facilities used by the pub.storage services.
This service is run automatically when the WmPublic package is loaded and should not
be explicitly invoked by a client.
pub.storage:unlock
WmPublic. Unlocks an entry or a data store.
When a ow service retrieves an entry using the pub.storage:get service, the entry is locked
to prevent modication by other users before the ow completes. The entry remains
locked until the lock owner invokes a pub.storage:put service. To unlock a service without
using the pub.storage:put service, use the pub.storage:unlock service.
In addition, if a ow service uses the pub.storage:lock service to lock an entry or data store,
you must use the pub.storage:unlock or pub.storage:put service to release the lock.
Important: Be careful when releasing locks with this service. If you release a lock on
a data store, another thread can obtain a lock on the data store and delete it, and the
entries it contains, even if the original thread still has locks on one or more of the entries.
Input Parameters
storeName
key
Output Parameters
None.
855
Even Header
856
Odd Header
String Folder
33 String Folder
Summary of Elements in this Folder .........................................................................................
858
857
Even Header
String Folder
You use the elements in the string folder to perform string manipulation and
substitution operations.
pub.string:base64Decode
pub.string:base64Encode
pub.string:bytesToString
pub.string:concat
pub.string:HTMLDecode
pub.string:HTMLEncode
pub.string:indexOf
pub.string:length
pub.string:lookupDictionary
pub.string:lookupTable
pub.string:makeString
858
Odd Header
String Folder
Element
pub.string:messageFormat
pub.string:numericFormat
pub.string:objectToString
pub.string:padLeft
pub.string:padRight
pub.string:replace
pub.string:stringToBytes
pub.string:substring
pub.string:tokenize
pub.string:toLower
pub.string:toUpper
pub.string:trim
pub.string:URLDecode
pub.string:URLEncode
859
Even Header
String Folder
pub.string:base64Decode
WmPublic. Decodes a Base-64 encoded string into a sequence of bytes.
Input Parameters
string
Output Parameters
value
encoding
pub.string:base64Encode
WmPublic. Converts a sequence of bytes into a Base64-encoded String.
Input Parameters
bytes
useNewLine
encoding
Output Parameters
value
860
Odd Header
String Folder
Usage Notes
By default, the pub.string:base64Encode service inserts line breaks after 76 characters of
data, which is not the canonical lexical form expected by implementations such as
MTOM. You can use the useNewLine parameter to remove the line breaks. For more
information about MTOM implementations, refer to Web Services Developers Guide.
pub.string:bytesToString
WmPublic. Converts a sequence of bytes to a String.
Input Parameters
bytes
encoding
Output Parameters
string
pub.string:concat
WmPublic. Concatenates two strings.
Input Parameters
inString1
inString2
Output Parameters
value
861
Even Header
String Folder
pub.string:HTMLDecode
WmPublic. Replaces HTML character entities with native characters.
Specically, the service:
Replaces this HTML
character entity...
With...
>
>
<
<
&
&
"
"
Input Parameters
inString
Output Parameters
value
pub.string:HTMLEncode
WmPublic. Replaces HTML-sensitive characters with equivalent HTML character
entities.
Specically, this service:
Replaces this native
language character...
With...
>
>
<
<
862
Odd Header
String Folder
With...
&
&
"
"
&39
Output Parameters
value
pub.string:indexOf
WmPublic. Returns the index of the rst occurrence of a sequence of characters in a
string.
Input Parameters
inString
subString
fromIndex
863
Even Header
String Folder
Output Parameters
value
pub.string:length
WmPublic. Returns the length of a string.
Input Parameters
inString
Output Parameters
value
pub.string:lookupDictionary
WmPublic. Looks up a given key in a hash table and returns the string to which that key
is mapped.
Input Parameters
hashtable
key
Output Parameters
value
864
Odd Header
String Folder
pub.string:lookupTable
WmPublic. Locates a key in a String Table and returns the string to which that key is
mapped.
Input Parameters
lookupTable
keyColumnIndex
valueColumnIndex
key
ignoreCase
String Optional. Flag indicating whether to perform a casesensitive or case-insensitive search. Set to:
true to perform a case-insensitive search.
false to perform a case-sensitive search. This is the default.
useRegex
regular expressions.
865
Even Header
String Folder
pub.string:makeString
WmPublic. Builds a single string by concatenating the elements of a String List.
Input Parameters
elementList
separator
Output Parameters
value
pub.string:messageFormat
WmPublic. Formats an array of strings into a given message paern.
Input Parameters
paern
866
Odd Header
String Folder
Output Parameters
value
pub.string:numericFormat
WmPublic. Formats a number into a given numeric paern.
Input Parameters
num
paern
Indicates...
A digit.
A separation in format.
'
867
Even Header
String Folder
Description
,
,
$.00
''.0
Output Parameters
value
pub.string:objectToString
WmPublic. Converts an object to string representation using the Java toString() method
of the object.
Input Parameters
object
868
Odd Header
String Folder
Output Parameters
string
pub.string:padLeft
WmPublic. Pads a string to a specied length by adding pad characters to the beginning
of the string.
Input Parameters
inString
padString
length
Output Parameters
value
Usage Notes
If padString is longer than one character and does not t exactly into the resulting string,
the beginning of padString is aligned with the beginning of the resulting string. For
example, suppose inString equals shipped and padString equals x9y.
If length equals...
shipped
10
x9yshipped
12
x9x9yshipped
869
Even Header
String Folder
If inString is longer than length characters, only the last length characters from inString
are returned. For example, if inString equals acct1234 and length equals 4, value will
contain 1234.
pub.string:padRight
WmPublic. Pads a string to a specied length by adding pad characters to the end of the
string.
Input Parameters
inString
padString
length
Output Parameters
value
Usage Notes
If padString is longer than one character and does not t exactly into the resulting string,
the end of padString is aligned with the end of the resulting string. For example, suppose
inString equals shipped and padString equals x9y.
If length equals...
shipped
10
shippedx9y
12
shippedx9y9y
If inString is longer than length characters, only the rst length characters from inString
are returned. For example, if inString equals 1234acct and length equals 4, value will
contain 1234.
870
Odd Header
String Folder
pub.string:replace
WmPublic. Replaces all occurrences of a specied substring with a substitute string.
Input Parameters
inString
searchString
replaceString
useRegex
pub.string:stringToBytes
WmPublic. Converts a string to a byte array.
Input Parameters
string
encoding
871
Even Header
String Folder
pub.string:substring
WmPublic. Returns a substring of a given string.
Input Parameters
inString
beginIndex
endIndex
Output Parameters
value
pub.string:tokenize
WmPublic. Tokenizes a string using specied delimiter characters and generates a String
List from the resulting tokens.
This service does not return delimiters as tokens.
Input Parameters
inString
String String you want to tokenize (that is, break into delimited
chunks).
872
Odd Header
String Folder
delim
Output Parameters
valueList
pub.string:toLower
WmPublic. Converts all characters in a given string to lowercase.
Input Parameters
inString
language
country
variant
Output Parameters
value
pub.string:toUpper
WmPublic. Converts all characters in a given string to uppercase.
Input Parameters
inString
873
Even Header
String Folder
language
country
variant
Output Parameters
value
pub.string:trim
WmPublic. Trims leading and trailing white space from a given string.
Input Parameters
inString
Output Parameters
value
pub.string:URLDecode
WmPublic. Decodes a URL-encoded string.
Input Parameters
inString
Output Parameters
value
874
Odd Header
String Folder
pub.string:URLEncode
WmPublic. URL-encodes a string.
Encodes characters the same way that data posted from a WWW form is encoded (that
is, the application/x-www-form-urlencoded MIME type).
Input Parameters
inString
Output Parameters
value
875
Even Header
876
Odd Header
Sync Folder
34 Sync Folder
Summary of Elements in this Folder .........................................................................................
878
877
Even Header
Sync Folder
You use the elements in the sync folder to coordinate the execution of services. You can
coordinate services so that a waiting service will execute if and only if a notifying service
produces the input required by the waiting service within a specied time period. The
synchronization services wait for and send notication using a key. A notifying service
only delivers input to waiting services with the same key.
pub.sync:notify
pub.sync:shutdown
pub.sync:wait
pub.sync:notify
WmPublic. Noties services waiting on the specied key and delivers the input
document to the services.
Input Parameters
key
String Name of the key. Waiting services with the same key will
receive notication and input from this service.
value
Output Parameters
notied
878
Odd Header
Sync Folder
pub.sync:shutdown
WmPublic. Releases internal resources used by the pub.sync services. This service is
run automatically when the WmPublic package is unloaded and should not be explicitly
invoked by a client.
pub.sync:wait
WmPublic. Allows one or more services to wait for delivery of data from a notifying
service.
Input Parameters
key
time
exclusive
the default.
879
Even Header
Sync Folder
Output Parameters
value
Usage Notes
Any service that is waiting for the key notication, receives the notication as long as the
lifespan of the wait request overlaps with the lifespan of the notication. However, if a
service with an exclusive wait registers for the notication key , the notication ends as
soon as the exclusive wait is notied.
An exclusive wait might not be the only wait that receives the notication. For example,
an exclusive wait might be registered after other non-exclusive waits have been notied.
However, once an exclusive wait is registered, it will be the last wait to be notied.
Notication must occur within the time period specied by the time parameter. If
the wait request expires before receiving a notication, Integration Server throws a
ServiceException: [ISS.0086.9067] wait timed out.
If the pub.sync.wait service species a key for which an exclusive wait already exits,
Integration Server returns a ServiceException: [ISS.0086.9065] already in exclusive wait.
If the pub.sync.wait service species an exclusive wait for a key for which regular wait
threads already exits, Integration Server throws a ServiceException: [ISS.0086.9066]
cannot obtain exclusive wait.
880
Odd Header
Synchronization Folder
35 Synchronization Folder
Summary of Elements in this Folder .........................................................................................
882
881
Even Header
Synchronization Folder
You use the elements in the synchronization folder to perform latching and crossreferencing operations in a publish-and-subscribe integration.
pub.synchronization.latch:closeLatch
pub.synchronization.latch:isLatchClosed
pub.synchronization.latch:openLatch
pub.synchronization.xref:createXReference
pub.synchronization.xref:deleteByObjectId
pub.synchronization.xref:deleteXReference
pub.synchronization.xref:getCanonicalKey
pub.synchronization.xref:getNativeId
pub.synchronization.xref:insertXReference
pub.synchronization.latch:closeLatch
WmPublic. Closes the latch for a resource.
The resource cannot be acted upon while the latch is closed. By closing a latch, you can
prevent a circular update between the source and target resources.
882
Odd Header
Synchronization Folder
Input Parameters
appId
String A unique identier for the target resource for which you want
to close a latch. Typically, the appId is the name of the adapter or the
resource.
canonicalKey
objectId
Output Parameters
None.
pub.synchronization.latch:isLatchClosed
WmPublic. Checks a resource's latch status.
By checking the latch status, you can determine whether a resource has been updated.
Input Parameters
appId
String A unique identier for the resource for which you want to
check the latch status. Typically, the appId is the name of the adapter
or the resource.
canonicalKey
objectId
Output Parameters
isLatchClosed
883
Even Header
Synchronization Folder
true indicates that the latch is closed. The resource has been
updated.
false indicates that the latch is open. The resource has not been
updated.
Usage Notes
Use the latch status to determine whether or not to update the resource.
If the latch is closed (isLatchClosed is true), the resource is already updated. Use the
pub.synchronization.latch:openLatch service to end execution of the update and open the
latch in preparation for the next update to the resource.
If the latch is open (isLatchClosed is false), the resource has not yet been updated.
Invoke services to locate and update the record in the target resource. Then invoke
the pub.synchronization.latch:closeLatch service to close the latch and prevent circular
updates.
For more information about using the pub.synchronization.latch services to prevent echo
suppression, see the Publish-Subscribe Developers Guide.
See Also
pub.synchronization.latch:closeLatch
pub.synchronization.latch:openLatch
pub.synchronization.latch:openLatch
WmPublic. Opens the latch for a resource.
By opening the latch, you can end propagation of the update and make the resource
available for future updates.
Input Parameters
appId
String A unique identier for the resources for which you want to
open the latch. Typically, the appId is the name of the adapter or the
resource.
canonicalKey
objectId
884
Odd Header
Synchronization Folder
Output Parameters
None.
pub.synchronization.xref:createXReference
WmPublic. Creates a cross-reference between a canonical key and a native ID.
Input Parameters
appId
String A unique identier for the resource (application) for which you
want to create a cross-reference to a canonical key.
nativeId
String A unique identier for the resource record for which you want
to create a cross-reference to a canonical key.
canonicalKey
objectId
Output Parameters
canonicalKey
String The canonical key. This key correlates native IDs of records
from dierent resources. This will be a new, unique key if
canonicalKey was not provided as an input parameter. If canonicalKey
was provided as input, this output parameter returns the same value.
Usage Notes
The canonical document is the standard format that a document assumes while it
travels through webMethods components. A source resource will convert or map
data from its proprietary data format into the canonical format before publishing the
document. A target resource (a subscriber to the canonical document) will map the
canonical document to the target resource's proprietary data format before processing
the document. The canonical document acts as the intermediary data format between
resources.
On the source side of the synchronization, use the createXReference service to create the
canonical key for the canonical document and establish a cross-reference between the
885
Even Header
Synchronization Folder
record in the source application and the canonical document. Before publishing the
canonical document, link the generated canonicalKey to the canonical document.
On the target side of synchronization, use the pub.synchronization.xref:insertXReference service
to insert the cross-reference between a canonical key and the native ID for the record in
the target resource.
For more information about using the createXReference service to create synchronizations,
see the Publish-Subscribe Developers Guide
See Also
pub.synchronization.xref:insertXReference
pub.synchronization.xref:deleteByObjectId
WmPublic. Removes all cross-reference records associated with a particular process or
synchronization.
Input Parameters
objectId
String A unique identier for the object or process for which you want
to delete all cross-reference records. Typically, the objectId eld is set
to the name of the business process for which you are performing
synchronization, such as "order" or "customer."
Output Parameters
None.
Usage Notes
You can use this service to purge unwanted cross-reference records from the crossreference table. For example, if you wanted to delete all cross-reference records for the
purchaseOrder synchronization, specify "purchaseOrder" as the objectId .
pub.synchronization.xref:deleteXReference
WmPublic. Deletes a cross-reference record from the cross-reference table.
This service deletes only one cross-reference record.
Input Parameters
appId
String A unique identier for the resource (application) for which you
want to delete a cross-reference record.
886
Odd Header
Synchronization Folder
canonicalKey
objectId
String A unique identier for the object or process for which you
want to delete a cross-reference. Typically, the objectId eld is set
to the name of the business process for which you are performing
synchronization, such as "order" or "customer."
Output Parameters
None.
pub.synchronization.xref:getCanonicalKey
WmPublic. Retrieves the canonical key for a specied native ID.
Input Parameters
appId
nativeId
String A unique identier for the resource record for which you want
to obtain the canonical key.
objectId
Output Parameters
canonicalKey
String The canonical key for the provided native ID. If the requested
key cannot be found or does not exist in the cross-reference table, an
empty string is returned.
Usage Notes
You can use this service to determine whether you need to insert or update a record in
the resource.
If the canonical key exists (canonicalKey contains a value), a cross-reference
between the native ID and the canonical key already exists. The record
with the specied nativeId is not a new record. You can then invoke the
887
Even Header
Synchronization Folder
pub.synchronization.xref:getNativeId
WmPublic. Retrieves the native ID of a resource record associated with a canonical key.
Input Parameters
appId
String A unique identier for the resource from which you want to
retrieve the native ID associated with the provided canonical key.
canonicalKey
String The canonical key for which you want to obtain the
corresponding native ID.
objectId
Output Parameters
nativeId
String A unique identier for the resource record associated with the
provided canonical key. If the requested nativeId cannot be found in
the cross-reference table, an empty string is returned.
Usage Notes
You can use the getNativeId service on the target side of a synchronization to determine if
the record in the target resource needs to be inserted or just updated.
If the native ID does not exist (the nativeId eld contains an empty string) and you
specied the correct input values, then the record does not exist in the resource. You
will need to insert the record in the resource to generate the native ID. Then use the
webMethods Integration Server Built-In Services Reference Version 9.6
888
Odd Header
Synchronization Folder
pub.synchronization.xref:insertXReference
WmPublic. Inserts a cross-reference between a native ID and a canonical key.
Input Parameters
appId
String A unique identier for the resource for which you want to
establish a cross-reference between a native ID and a canonical key.
nativeId
String A unique identier for the resource record with which you
want to establish a cross-reference to canonicalKey .
canonicalKey
String The canonical key with which you want to establish a crossreference to nativeId .
objectId
Output Parameters
None.
Usage Notes
Use this service on the target side of a synchronization to create a cross-reference
between the new record in the target resource and the canonical document.
889
Even Header
Synchronization Folder
Most resources generate a unique ID for a new record. Invoke the insertXReference service
after you add the new record in the resource.
After you insert the cross-reference between the new native ID and the canonical key,
use pub.synchronization.latch:closeLatch to close the latch for the record to prevent circular
updates (echoes).
For more information about using the insertXReference service in synchronizations, see the
Publish-Subscribe Developers Guide.
See Also
pub.synchronization.latch:closeLatch
pub.synchronization.xref:createXReference
890
Odd Header
Trigger Folder
36 Trigger Folder
Summary of Elements in this Folder .........................................................................................
892
891
Even Header
Trigger Folder
You can use the services in the trigger folder to create and delete webMethods
messaging trigger and JMS triggers. You can also use services to manage document
retrieval and document processing for individual webMethods messaging triggers and
change the state of one or more JMS triggers.
Note: A webMethods messaging trigger is a trigger that subscribes to and processes
documents published to a webMethods messaging provider (webMethods Broker or
webMethods Universal Messaging) or published locally within the Integration Server. A
JMS trigger is a trigger that receives messages from a Destination (queue or topic) on a
JMS provider and then processes those messages.
pub.trigger:createJMSTrigger
pub.trigger:createTrigger
pub.trigger:deleteJMSTrigger
pub.trigger:deleteTrigger
pub.trigger:disableJMSTriggers
pub.trigger:enableJMSTriggers
pub.trigger:resourceMonitoringSpec
pub.trigger:resumeProcessing
pub.trigger:resumeRetrieval
892
Odd Header
Trigger Folder
Element
pub.trigger:suspendJMSTriggers
pub.trigger:suspendProcessing
pub.trigger:suspendRetrieval
pub.trigger:createJMSTrigger
WmPublic. Creates a JMS trigger.
Input Parameters
triggerName
String Fully qualied name for the JMS new trigger. Names use any
combination of leers, and/or the underscore character. Make sure
to specify the name of the folder and subfolder in which you want
to save the JMS trigger.
Note: For a list of reserved words and symbols for element names, see
webMethods Service Development Help.
package
String Name of the package in which you want to save the trigger.
aliasName
String Name of the JMS connection alias that you want this JMS
trigger to use to receive messages from the JMS provider.
The JMS connection alias must already exist at the time this service
executes. Although a JMS connection alias does not need to be
enabled at the time you create the JMS trigger, the JMS connection
alias must be enabled for the JMS trigger to execute at run time.
A transacted JMS connection alias cannot be assigned to a JMS
trigger if a cluster policy is applied to the connection factory used
by the JMS connection alias.
jmsTriggerType
893
Even Header
Trigger Folder
properties
Description
enabled
enabled state.
joinType
894
Odd Header
Trigger Folder
895
Even Header
Trigger Folder
onTransientError
896
Odd Header
Trigger Folder
897
Even Header
Trigger Folder
maxBatchSize
898
Odd Header
Trigger Folder
dupHistoryTTL
dupResolverSvcName
prefetchSize
899
Even Header
Trigger Folder
connectionCount
900
Odd Header
Trigger Folder
Description
destination
destinationType
901
Even Header
Trigger Folder
topic.
messageSelector
durableSubscriber
Name
durableSubscriber
NoLocal
902
Odd Header
Trigger Folder
Description
ruleName
serviceName
lter
Note: Integration Server evaluates the routing rules in the same order
in which the rules appear in the routingRules document list. It is
possible that a message could satisfy more than one routing rule.
However, Integration Server executes only the service associated
with the rst satised routing rule and ignores the remaining
routing rules. Therefore, the order in which you list routing rules is
important.
Output Parameters
None.
903
Even Header
Trigger Folder
Usage Notes
You can use pub.trigger:createJMSTriggers to create standard JMS triggers or SOAP-JMS
triggers.
Even though WS endpoint triggers are SOAP-JMS triggers, you can create WS endpoint
triggers via Integration Server Administrator only. For more information about WS
endpoint triggers, see webMethods Integration Server Administrators Guide.
If you use a JNDI provider to store JMS administered objects, the Connection Factories
and Destinations (queues and topics) that you want this JMS trigger to use to consume
messages must already exist. If they do not exist, the JMS trigger will be created but
will not start. The JMS trigger will appear disabled in Designer and Integration Server
Administrator.
If you use the native webMethods API to connect directly to the webMethods Broker, the
Destinations from which you want the JMS trigger to receive messages must exist on the
Broker. However, if you intend to use a durable subscriber to receive messages, it can be
created by Integration Server when the pub.trigger:createJMSTrigger executes successfully.
For more information about creating Destinations on the Broker, see Administering
webMethods Broker.
The transaction type of the JMS connection alias determines whether or not the JMS
trigger is transacted (that is, it receives and processes messages as part of a transaction).
Transacted JMS triggers have slightly dierent properties and operate dierently than
non-transacted JMS triggers.
For a standard JMS trigger, the trigger service that you want to specify in the routing
rule must already exist on the same Integration Server on which you create the JMS
trigger.
A standard JMS trigger can contain multiple routing rules. Each routing rule must have
a unique name.
A standard JMS trigger that contains an All (AND) or Only one (XOR) join can only have
one routing rule and cannot have a batch processing size (Max batch messages property)
greater than 1. A standard JMS trigger with an Any (Or) join can have multiple routing
rules.
When you select Topic as the destinationType and specify a value for
durableSubscriberName , Integration Server creates a a durable subscriber for the JMS
trigger on the JMS provider. A durable subscriber establishes a durable subscription
with a unique identity on the JMS provider. A durable subscription allows subscribers
to receive all the messages published on a topic, including those published while the
subscriber is inactive (for example, if the JMS trigger is disabled). When the associated
JMS trigger is disabled, the JMS provider holds the messages in nonvolatile storage. If
a durable subscription already exists for the specied durable subscriber on the JMS
provider, this service resumes the subscription.
When you select Topic as the destinationType , but do not specify a durable subscriber
name, Integration Server creates a non-durable subscriber for the JMS trigger. A nondurable subscription allows subscribers to receive messages on their chosen topic only if
904
Odd Header
Trigger Folder
the messages are published while the subscriber is inactive. A non-durable subscription
lasts the lifetime of its message consumer. Note that non-durable subscribers cannot
receive messages in a load-balanced fashion.
Integration Server uses a consumer to receive messages for a JMS trigger. This consumer
encapsulates the actual javax.jms.MessageConsumer and javax.jms.Session.
Triggers and services can both be congured to retry. When a standard trigger invokes
a service (that is, the service functions as a trigger service), Integration Server uses the
trigger retry properties instead of the service retry properties. For a SOAP-JMS trigger,
Integration Server uses the retry properties of the SOAP-JMS trigger instead of the retry
properties of the service used as an operation in the web service descriptor.
When Integration Server retries a trigger service and the trigger service is congured to
generate audit data on error, Integration Server adds an entry to the audit log for each
failed retry aempt. Each of these entries will have a status of "Retried" and an error
message of "Null". However, if Integration Server makes the maximum retry aempts
and the trigger service still fails, the nal audit log entry for the service will have a status
of "Failed" and will display the actual error message. Integration Server makes the audit
log entry regardless of which retry failure option the trigger uses.
Integration Server generates the following journal log message between retry aempts:
[ISS.0014.0031D] Service serviceName failed with ISRuntimeException.
Retry x of y will begin in retryInterval milliseconds.
If you do not congure service retry for a trigger, set the maxRetryAempts to 0. Because
managing service retries creates extra overhead, seing this property to 0 can improve
the performance of services invoked by the trigger.
You can invoke the pub.flow:getRetryCount service within a trigger service to determine
the current number of retry aempts made by Integration Server and the maximum
number of retry aempts allowed for the trigger service. For more information about
the pub.flow:getRetryCount service, see the webMethods Integration Server Built-In Services
Reference.
Before a standard JMS trigger can be enabled, the trigger service must already exist on
the same Integration Server.
The signature for a standard JMS trigger service must reference one of the following
specications:
Use pub.jms:triggerSpec as the specication reference if the trigger service will process
one message at a time.
Use pub.jms:batchTriggerSpec as the specication reference if the trigger service will
process multiple messages at one time. That is, the trigger service will receive a
batch of messages as input and process all of those messages in a single execution. A
trigger that receives and processes a batch of messages is sometimes referred to as a
batch trigger.
If you create a concurrent JMS trigger that uses multiple connections to receive messages
from the JMS provider, (you specied a value greater than 0 for connectionCount ), keep
the following points in mind:
905
Even Header
Trigger Folder
The JMS connection alias associated with this trigger must be congured to create an
individual connection for each trigger. That is, the Create New Connection per Trigger
option must be set to Yes for the JMS connection alias.
If the JMS connection alias species a connection to the webMethods Broker, the
following must be true:
The webMethods Broker must be webMethods Broker version 7.1 or higher.
The versions of following three Broker jar les installed on Integration Server
must be the 8.0 SP1 or higher versions of the les.
Software AG_directory/common/lib/wm-jmsclient.jar
Software AG_directory/common/lib/wm-brokerclient.jar
Software AG_directory/Integration Server_directory/instances/instance_name /lib/
jars/wm- jmsnaming.jar
The JMS trigger must be congured for concurrent processing (isConcurrent is set
to true). You cannot use multiple connections with JMS triggers that perform serial
processing.
The JMS trigger must receive messages from Queues or from Topics using a durable
subscriber. You cannot use multiple connections with JMS triggers that receive
messages from Topics using a non-durable subscriber.
The connectionCount value must be less than or equal to the maxExecutionThreads
value.
SOAP-JMS triggers do not use routing rules. For SOAP-JMS triggers, Integration Server
processes the SOAP message contained in the JMS message by executing an operation in
a web service descriptor.
To use a SOAP-JMS trigger as a listener for provider web service descriptors, do the
following:
Create a provider web service endpoint alias for the JMS transport in which the
SOAP-JMS trigger is specied as the JMS trigger that acts as a listener.
Assign the web service endpoint alias to the JMS binder in the web service descriptor
for which you want the SOAP-JMS trigger to listen for messages.
For more information about creating JMS triggers, see webMethods Service Development
Help.
See Also
pub.trigger:deleteJMSTrigger
pub.jms:triggerSpec
pub.jms:batchTriggerSpec
906
Odd Header
Trigger Folder
pub.trigger:createTrigger
WmPublic. Creates a webMethods messaging trigger.
Note: The pub.trigger:createTrigger service cannot be used to create webMethods messaging
triggers that subscribe to document types published to Universal Messaging.
Input Parameters
triggerName
String Fully qualied name for the new trigger that uses any
combination of leers, and/or the underscore character. Make
sure to specify the name of the folder and subfolder in which
you want to save the trigger.
Note: For a list of reserved words and symbols for element
names, see webMethods Service Development Help.
package
properties
Description
joinTimeOut
907
Even Header
Trigger Folder
queueCapacity
queueRellLevel
ackQueueSize
maxRetryAempts
retryInterval
onRedeliveryFailure
908
Odd Header
Trigger Folder
909
Even Header
Trigger Folder
910
Odd Header
Trigger Folder
dupDetection
911
Even Header
Trigger Folder
dupHistoryTTL
dupResolverSvcName
conditions
Description
conditionName
serviceName
joinType
912
Odd Header
Trigger Folder
condition.
Description
913
Even Header
Trigger Folder
messageType
String Fully
qualied
name of the
publishable
document type
or message to
which the trigger
subscribes.
lter
String Filter
that you want
Integration
Server to apply
to each instance
of this message.
Integration
Server executes
the trigger
service only
if instances of
the message
meet the lter
criteria. Filters
are optional for a
trigger condition.
For more
information
about lters,
see the PublishSubscribe
Developers Guide.
Note: If multiple
conditions in the
trigger specify the
same document
type or message,
the lter must be
the same in the
conditions. If the
lters are not the
same, Integration
Server ignores the
condition.
914
Odd Header
Trigger Folder
915
Even Header
Trigger Folder
pub.trigger:deleteJMSTrigger
WmPublic. Deletes a JMS trigger.
Input Parameters
triggerName
Output Parameters
None
See Also
pub.trigger:createJMSTrigger
pub.trigger:deleteTrigger
WmPublic. Deletes a webMethods messaging trigger.
Input Parameters
triggerName
Output Parameters
None.
Usage Notes
The trigger must be unlocked for this service to execute successfully. If the trigger is
locked when this service executes, Integration Server throws an error stating "Trigger is
locked, change not permied."
When you delete a webMethods messaging trigger that uses a Broker connection alias
that species a shared client prex, deleting the trigger will not delete the corresponding
client queue on the Broker. When the client prex is shared, the client queue might
be used by other Integration Servers. The publishable document type to which a
webMethods messaging trigger subscribes determines the connection alias used by the
trigger.
When you delete a webMethods messaging trigger that uses a Universal Messaging
connection alias that species a shared client prex, deleting the trigger will not delete
the corresponding NamedObject. When the client prex is shared, the NamedObject
916
Odd Header
Trigger Folder
might be used by other Integration Servers. The publishable document type to which a
webMethods messaging trigger subscribes determines the connection alias used by the
trigger.
See Also
pub.trigger:createTrigger
pub.trigger:disableJMSTriggers
WmPublic. Disables one or more JMS triggers.
Input Parameters
triggerNameList
String List Species the JMS triggers that you want to disable.
applyChangeAcross
Cluster
the cluster.
Output Parameters
None.
Usage Notes
When a JMS trigger is disabled, the JMS trigger is stopped. Integration Server neither
retrieves nor processes messages for the JMS trigger. The JMS trigger remains in this
state until you enable the trigger.
When you disable a JMS trigger that has a non-durable subscriber, the JMS provider will
remove any messages for the JMS trigger.
917
Even Header
Trigger Folder
If you disable a SOAP-JMS trigger that acts as a listener for one or more provider web
service descriptors, Integration Server will not retrieve any messages for those web
service descriptors.
When you disable a JMS trigger, Integration Server does the following:
If the JMS trigger is waiting before making a retry aempt, Integration Server
interrupts processing for the JMS trigger.
If the JMS trigger is currently processing messages, Integration Server waits a
specied amount of time before forcing the JMS trigger to stop processing messages.
If it does not complete in the alloed time the message consumer used to receive
messages for the JMS trigger is stopped and the JMS session is closed. At this point
the server thread for the JMS trigger continues to run to completion. However, the
JMS trigger will not be able to acknowledge the message when processing completes.
If the message is guaranteed (PERSISTENT), this can lead to duplicate messages.
The time Integration Server waits between the request to disable
the JMS trigger and forcing the trigger to stop is specied by the
watt.server.jms.trigger.stopRequestTimeout property
Because administered objects, like destinations, are congured outside of Integration
Server, disabling a JMS trigger has no impact on the subscription.
Use the pub.trigger:enableJMSTriggers service to enable one or more JMS triggers.
Use the pub.trigger:suspendJMSTriggers service to suspend one or more JMS triggers.
You can also use the Settings > Messaging > JMS Trigger Management screens in Integration
Server Administrator to disable, enable, and suspend JMS triggers. For more
information, see webMethods Integration Server Administrators Guide.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
If Integration Server cannot update the Integration Servers in the cluster because the
change could not be made locally, the Integration Server Administrator displays the
following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors are
resolved.)
918
Odd Header
Trigger Folder
If Integration Server cannot update the other Integration Servers in the cluster
because cluster synchronization is not congured, the Integration Server writes the
following server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
See Also
pub.trigger:enableJMSTriggers
pub.trigger:suspendJMSTriggers
pub.trigger:enableJMSTriggers
WmPublic. Enables one or more JMS triggers.
Input Parameters
triggerNameList
String List Species the JMS triggers that you want to enable.
applyChangeAcross
Cluster
the cluster.
Output Parameters
None.
Usage Notes
When a JMS trigger is enabled, the JMS trigger is running and connected to the JMS
provider. Integration Server retrieves and processes messages for the JMS trigger.
919
Even Header
Trigger Folder
You can also use the Settings > Messaging > JMS Trigger Management screens in Integration
Server Administrator to disable, enable, and suspend JMS triggers. For more
information, see webMethods Integration Server Administrators Guide.
You can use the pub.trigger:disableJMSTriggers service to disable one or more JMS triggers.
Use the pub.trigger:suspendJMSTriggers service to suspend one or more JMS triggers.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; = exceptionName
If Integration Server cannot update the Integration Servers in the cluster because the
change could not be made locally, the Integration Server Administrator displays the
following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors
are resolved.)
If the Integration Server cannot update the Integration Servers in the cluster because
cluster synchronization is not congured, the Integration Server writes the following
server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
You can use the Integration Server Administrator to view and change cluster
synchronization status for triggers. For more information, see webMethods Integration
Server Administrators Guide.
See Also
pub.trigger:disableJMSTriggers
pub.trigger:suspendJMSTriggers
pub.trigger:resourceMonitoringSpec
WmPublic. Specication for the signature of a resource monitoring service.
Input Parameters
None.
920
Odd Header
Trigger Folder
Output Parameters
isAvailable
pub.trigger:resumeProcessing
WmPublic. Resumes document processing for the specied webMethods messaging
trigger.
Input Parameters
triggerName
persistChange
921
Even Header
Trigger Folder
922
Odd Header
Trigger Folder
> Messaging > webMethods Messaging Trigger Management page in the Integration Server
Administrator.
Integration Server resumes document processing for the specied trigger even if
document processing is suspended for all triggers on the Integration Server (that is, the
Processing State for all triggers is set to Suspended).
Integration Server will not resume document processing for the specied trigger if the
trigger is locked by a user. For more information about locking elements, see webMethods
Service Development Help.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If the Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
If the Integration Server cannot update the Integration Servers in the cluster because
the change could not be made locally, the Integration Server Administrator displays
the following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors are
resolved.)
If the Integration Server cannot update the Integration Servers in the cluster because
cluster synchronization is not congured, the Integration Server writes the following
server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
You can use the Integration Server Administrator to view and change cluster
synchronization status for triggers. For more information, see webMethods Integration
Server Administrators Guide.
In a Java service, you can resume document processing using
com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade.setProcessingSuspended().
For more information about this method, see the webMethods Integration Server Java API
Referencefor the com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade class.
You can resume and suspend document processing for an individual trigger or
all triggers using the Integration Server Administrator. For more information, see
webMethods Integration Server Administrators Guide.
See Also
pub.trigger:suspendProcessing
923
Even Header
Trigger Folder
pub.trigger:resumeRetrieval
WmPublic. Resumes retrieval of documents from the messaging provider for a specic
webMethods messaging trigger.
Input Parameters
triggerName
persistChange
924
Odd Header
Trigger Folder
Output Parameters
None.
Usage Notes
This service does not aect document retrieval for locally published documents to which
this trigger subscribes.
If you do not persist the change, the trigger reverts to the previously saved document
retrieval state when the server restarts, the trigger is enabled or disabled, or the package
containing the trigger reloads.
After this service executes, the Integration Server resumes document retrieval for this
trigger at the percentage specied in the Queue Capacity Throttle eld on the Settings
> Messaging > webMethods Messaging Trigger Management page in the Integration Server
Administrator.
The Integration Server resumes document retrieval for the specied trigger even if
document retrieval is suspended for all the triggers on the Integration Server (that is, the
Retrieval State for all triggers is set to Suspended).
The Integration Server will not resume document retrieval for the specied trigger if the
trigger is locked by a user. For more information about locking elements, see webMethods
Service Development Help.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If the Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
If the Integration Server cannot update the Integration Servers in the cluster because
the change could not be made locally, the Integration Server Administrator displays
the following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors are
resolved.)
If the Integration Server cannot update the Integration Servers in the cluster because
cluster synchronization is not congured, the Integration Server writes the following
server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
925
Even Header
Trigger Folder
You can use the Integration Server Administrator to view and change cluster
synchronization status for triggers. For more information, see webMethods Integration
Server Administrators Guide.
In a Java service, you can resume document retrieval by calling
com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade.setRetrievalSuspended().
For more information about this method, see the webMethods Integration Server Java API
Reference for the com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade class.
You can resume and suspend document retrieval for an individual trigger or all triggers
using the Integration Server Administrator. For more information, see webMethods
Integration Server Administrators Guide.
See Also
pub.trigger:suspendRetrieval
pub.trigger:suspendJMSTriggers
WmPublic. Suspends one or more JMS triggers.
Input Parameters
triggerNameList
String List Species the JMS triggers that you want to suspend.
applyChangeAcross
Cluster
the cluster.
Output Parameters
None.
926
Odd Header
Trigger Folder
Usage Notes
When a JMS trigger is suspended, the JMS trigger is running and connected to the JMS
provider. Integration Server has stopped message retrieval, but continues processing
any messages it has already retrieved. Integration Server enables the JMS trigger
automatically upon server restart or when the package containing the JMS trigger
reloads.
If you suspend a SOAP-JMS trigger that acts as a listener for one or more provider web
service descriptors, Integration Server will not retrieve any messages for those web
service descriptors.
If a JMS trigger is processing messages when this service executes, the JMS trigger will
complete processing. JMS trigger also acknowledges the messages to the JMS provider.
After a suspending a JMS trigger, Integration Server will not start processing for any
additional messages already received by the JMS trigger.
Use the pub.trigger:disableJMSTriggers service to disable one or more JMS triggers.
Use the pub.trigger:enableJMSTriggers service to enable one or more JMS triggers.
You can also use the Settings > Messaging > JMS Trigger Management screens in Integration
Server Administrator to disable, enable, and suspend JMS triggers. For more
information, see webMethods Integration Server Administrators Guide.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
If Integration Server cannot update the Integration Servers in the cluster because the
change could not be made locally, the Integration Server Administrator displays the
following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors
are resolved.)
If Integration Server cannot update the other Integration Servers in the cluster
because cluster synchronization is not congured, the Integration Server writes the
following server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
927
Even Header
Trigger Folder
See Also
pub.trigger:disableJMSTriggers
pub.trigger:enableJMSTriggers
pub.trigger:suspendProcessing
WmPublic. Suspends document processing for the specied webMethods messaging
trigger.
Input Parameters
triggerName
persistChange
928
Odd Header
Trigger Folder
When you suspend document processing, the Integration Server will not dispatch any
more server threads to process documents in the trigger's queue. Any server threads
currently processing documents for the trigger will execute to completion. This includes
documents that are being retried.
When you suspend document processing, documents that the trigger retrieves will
collect in the trigger queue until the trigger resumes document processing. If the server
restarts before document processing resumes, volatile documents are discarded.
If you do not persist the change, the trigger reverts to the previously saved document
processing state when the server restarts, the trigger is enabled or disabled, or the
package containing the trigger reloads.
The Integration Server will not suspend document processing for the specied trigger
if the trigger is locked by a user. For more information about locking elements, see
webMethods Service Development Help.
If you suspend document processing, but do not suspend document retrieval for
a trigger, the trigger queue lls to capacity and Integration Server stops retrieving
documents for this trigger from the Broker.
If you set applyChangeAcrossCluster to true and the synchronization is not successful,
the following occurs:
If the Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
929
Even Header
Trigger Folder
If the Integration Server cannot update the Integration Servers in the cluster because
the change could not be made locally, the Integration Server Administrator displays
the following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors
are resolved.)
If the Integration Server cannot update the Integration Servers in the cluster because
cluster synchronization is not congured, the Integration Server writes the following
server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
You can use the Integration Server Administrator to view and change cluster
synchronization status for triggers. For more information, see webMethods Integration
Server Administrators Guide.
In a Java service, you can suspend document processing by calling
com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade.setProcessingSuspended().
For more information about this method, see the webMethods Integration Server Java API
Reference for the com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade class.
You can resume and suspend document processing for an individual trigger or
all triggers using the Integration Server Administrator. For more information, see
webMethods Integration Server Administrators Guide.
See Also
pub.trigger:resumeProcessing
pub.trigger:suspendRetrieval
WmPublic. Suspends retrieval of documents from the messaging provider for a specic
webMethods messaging trigger.
Input Parameters
triggerName
persistChange
930
Odd Header
Trigger Folder
931
Even Header
Trigger Folder
If you do not resume document retrieval before the server restarts, the trigger package
reloads, or the trigger properties are modied, the Broker discards any volatile
documents in that trigger's client queue.
If you do not persist the change, the trigger reverts to the previously saved document
retrieval state when the server restarts, the trigger is enabled or disabled, or the package
containing the trigger reloads.
If you suspend document retrieval for a trigger, but do not suspend document
processing for the trigger, the trigger eventually processes all the documents that were
retrieved from the messaging provider for the trigger.
If you set applyChangeAcrossCluster to true and the synchronization is not successful, the
following occurs:
If the Integration Server does not update all the Integration Servers in the cluster
successfully, the Integration Server writes the following server log entry for each
server that could not be updated:
[ISS.0098.0107E] Error occurred during cluster invoke:
Alias = remoteAliasName ; Service = serviceName ; Exception = exceptionName
If the Integration Server cannot update the Integration Servers in the cluster because
the change could not be made locally, the Integration Server Administrator displays
the following message:
[ISS.0085.9204] Local update failed: Exception providing reason for failure.
(Note: The cluster synchronization will not run until all local errors
are resolved.)
If the Integration Server cannot update the Integration Servers in the cluster because
cluster synchronization is not congured, the Integration Server writes the following
server log entry:
[ISS.0033.0156W] Cluster invoke did not complete successfully.
Cluster Synchronization feature is not configured.
You can use the Integration Server Administrator to view and change cluster
synchronization status for triggers. For more information, see webMethods Integration
Server Administrators Guide.
In a Java service, you can suspend document retrieval by calling
setRetrievalSuspended(). For more information about this method,
see the webMethods Integration Server Java API Reference for the
com.wm.app.b2b.server.dispatcher.trigger.TriggerFacade class.
You can resume and suspend document retrieval for an individual trigger or all triggers
using the Integration Server Administrator. For more information, see webMethods
Integration Server Administrators Guide.
See Also
pub.trigger:resumeRetrieval
webMethods Integration Server Built-In Services Reference Version 9.6
932
Odd Header
TX Folder
37 TX Folder
Summary of Elements in this Folder .........................................................................................
934
933
Even Header
TX Folder
Use services in the tx folder to perform administrative tasks for guaranteed delivery
transactions. For more information about guaranteed delivery, see the Guaranteed
Delivery Developers Guide and webMethods Integration Server Administrators Guide.
pub.tx:init
pub.tx:shutdown
pub.tx:resetOutbound
pub.tx:init
WmPublic. Starts processing inbound guaranteed delivery requests. These are
guaranteed delivery transactions sent to Integration Server from client applications.
Input Parameters
None.
Output Parameters
Operation
Usage Notes
If you shut down the guaranteed delivery capabilities of Integration Server to correct
a conguration problem or to make an administrative change, use this service to
reinitialize guaranteed delivery.
You can also use this service to reinitialize guaranteed delivery if it becomes disabled
due to an error (for example, because of a disk full condition or if the job store database
becomes inaccessible). Reinitialize guaranteed delivery after you correct the problem.
934
Odd Header
TX Folder
pub.tx:shutdown
WmPublic. Stops processing inbound guaranteed delivery requests. These are
guaranteed delivery transactions sent to Integration Server from client applications.
Input Parameters
None.
Output Parameters
Operation
Usage Notes
You might want to shut down guaranteed delivery to perform some administration
functions, such as correcting conguration errors or starting a new audit-trail log. (To
start a new audit-trail log, move or rename the existing log; the server automatically
starts a new log if one does not already exist.)
pub.tx:resetOutbound
WmPublic. Reinitializes the processing of outbound guaranteed delivery requests.
Outbound guaranteed delivery requests are those sent to another Integration Server.
Input Parameters
None.
Output Parameters
Operation
Usage Notes
If guaranteed delivery capabilities for outbound transactions become disabled due to
an error (for example, if the server encounters a disk full condition or if the job store
database becomes inaccessible), use this service to reinitialize guaranteed delivery after
you correct the problem. If you invoke this service while outbound guaranteed delivery
935
Even Header
TX Folder
is functioning normally, the service will throw an exception and outbound guaranteed
delivery will not be reinitialized.
936
Odd Header
UniversalName Folder
38 UniversalName Folder
Summary of Elements in this Folder .........................................................................................
938
937
Even Header
UniversalName Folder
You use the elements in the universalName folder to list the contents of the Universal
Name Registry and to look up services or document types by their universal names.
pub.universalName:find
pub.universalName:findDocumentType
pub.universalName:list
pub.universalName:listAll
pub.universalName:find
WmPublic. Returns the fully qualied service name for an explicit universal name.
Input Parameters
namespaceName
localName
Output Parameters
svcName
938
Odd Header
UniversalName Folder
pub.universalName:findDocumentType
WmPublic. Returns the fully qualied document type name for a provided explicit
universal name
Input Parameters
namespaceName
localName
Output Parameters
String Conditional. Fully qualied name of the document type
associated with the universal name in namespaceName and
localName . If the specied universal name is not in the registry,
svcName will be null.
svcName
pub.universalName:list
WmPublic. Returns a list of services in the current universal-name registry.
Input Parameters
None.
Output Parameters
names
Description
universalName
939
Even Header
UniversalName Folder
svcName
Key
Description
namespaceName
localName
Usage Notes
To return the entire contents of the universal-name registry, use the pub.universalName:listAll
service.
pub.universalName:listAll
WmPublic. Returns the contents of the current universal-name registry, including
services and document types.
Input Parameters
None.
Output Parameters
names
Description
universalName
Description
940
Odd Header
UniversalName Folder
svcName
namespaceName
localName
Usage Notes
To return a list of the services in the universal-name registry only, use the
pub.universalName:listservice.
941
Even Header
942
Odd Header
Utils Folder
39 Utils Folder
Summary of Elements in this Folder .........................................................................................
944
943
Even Header
Utils Folder
pub.utils:deepClone
pub.utils:executeOSCommand
pub.utils:generateUUID
pub.utils:getServerProperty
pub.utils.ws:setCompatibilityModeFalse
pub.utils:deepClone
WmPublic. Clones an object using the default Java serialization mechanism.
The originalObject and all its members must support the java.io.Serializable interface.
Input Parameters
originalObject
Output Parameters
clonedObject
944
Odd Header
Utils Folder
pub.utils:executeOSCommand
WmPublic. Executes an operating system command such as dir in Windows or ls in
UNIX.
Caution: Use the pub.utils:executeOSCommand service with extreme caution; the commands
can aect the production systems where Integration Server is running.
Parameter Settings for OSCommands.cnf file
The OSCommands.cnf conguration le in the Integration Server_directory\instances
\instance_name \packages\WmPublic\cong directory contains parameters
that Integration Server uses to provide validation checks to make the
pub.utils:executeOSCommand service secure.
Note: If you make any changes to the OSCommands.cnf, you must reload the WmPublic
package or restart Integration Server for the changes to take eect.
For security reasons, the pub.utils:executeOSCommand service checks the input command
parameter against the list of allowedCommandsSpecied in the OSCommands.cnf
le. The service also checks the input workingDirectory parameter against the list of
allowedWorkingDirectories. If the input command or directory is not on the allowed list,
the service throws an exception.
Parameter Settings
The following table shows the parameter seings for the OSCommands.cnf le:
Parameter
Description
allowedOSCommands
allowedWorkingDirectories
When modifying the parameters in the OSCommands.cnf le, keep the following points
in mind:
Use semicolon (;) as the delimiter for the allowedOSCommands and
allowedWorkingDirectories parameters.
If a command name or working directory has a semicolon (;), use backslashes (\\)
before the semicolon while specifying the allowed paths.
945
Even Header
Utils Folder
arguments
environment
workingDirectory
Output Parameters
status
outputMessage
errorMessage
Usage Notes
To execute the dir command on Windows XP using the pub.utils:executeOSCommand, the
command parameter is passed as cmd.exe /c dir and the working directory parameter
is passed as c:/temp. The outputMessage parameter will contain the les of c:/temp
directory.
946
Odd Header
Utils Folder
pub.utils:generateUUID
WmPublic. Generates a random Universally Unique Identier (UUID).
Input Parameters
None.
Output Parameters
UUID
pub.utils:getServerProperty
WmPublic. Retrieves the value of a specied server property.
Input Parameters
propertyName
String The name of the server property whose value you want
to retrieve (for example, wa.server.SOAP.directive).
defaultValue
Output Parameters
propertyValue
pub.utils.ws:setCompatibilityModeFalse
WmPublic. Changes the value of the Pre-8.2 compatibility mode property for a web service
descriptor to false.
947
Even Header
Utils Folder
Input Parameters
reportOnly
for the specied web service descriptors, save the web service
descriptor, and return a summary of the changes. This is the
default.
convertAllPackages java.lang.Boolean Optional. Indicates whether the service changes
the Pre-8.2 compatibility mode property for web service descriptors
in all of the packages on Integration Server or only web service
descriptors in specic packages. Set to:
true to change the web service descriptors in all of the packages
on Integration Server.
948
Odd Header
Utils Folder
Output Parameters
updatedWarning
Count
updated
failed
Key
Description
package
name
warnings
949
Even Header
Utils Folder
skipped
Key
Description
package
name
warnings
errors
Description
package
name
Usage Notes
Even though the convertAllPackages and packageNames input parameters are optional,
you must either set convertAllPackages to true or specify packages in packageNames .
Use the pub.utils.ws:setCompatibilityModeFalse service to change the Pre-8.2 compatibility mode
property value for multiple web service descriptors at one time.
950
Odd Header
Utils Folder
The Pre-8.2 compatibility mode property indicates the version of the web service stack with
which the web service descriptor is compatible:
When the Pre-8.2 compatibility mode property is set to true, the web service descriptor
runs on the earlier version of the web services stack, specically the web services
stack available in Integration Server versions 7.x, 8.0, and 8.0 SP1. web service
descriptors running in pre-8.2 compatibility mode have the same design-time
features and run-time behavior as web service descriptors run in versions of
Integration Server prior to version 8.2.
When the Pre-8.2 compatibility mode property is set to false, the web service descriptor
runs on the current version of the web services stack. web service descriptors that do
not run in pre-8.2 compatibility mode have the design-time features and run-time
behavior available in the current version of the web services stack.
For more details about which features are impacted by the compatibility mode of the
web service descriptor, see the Web Services Developers Guide.
Before changing the web service descriptor, the service veries that the web service
descriptor can be deployed to the web services stack that corresponds to the chosen
compatibility mode. Warnings indicate that the web service descriptor can be deployed
to the web services stack successfully but some run-time behavior might change.
If warnings occur for a particular web service descriptor, the service changes the
compatibility mode and lists warnings in the updated output parameter. Errors identify
the functionality that is incompatible with the web services stack. If errors occur for a
particular web service descriptor, the service does not change the compatibility mode
for that web service descriptor. the service identies the errors in the failed output
parameter.
Some warnings require further action to be taken, such as regenerating web service
connectors. Be sure to review all warnings.
The pub.utils.ws:setCompatibilityModeFalse service will not modify any web service descriptors
that are locked for edit or checked out at the time the service executes.
To use the pub.utils.ws:setCompatibilityModeFalse service to change the Pre-8.2 compatibility
mode property for a web service descriptor, you or whichever client is invoking the
service must have Write access to the web service descriptors.
951
Even Header
952
Odd Header
VCS Folder
40 VCS Folder
Summary of Elements in this Folder .........................................................................................
954
953
Even Header
VCS Folder
You use the elements in the VCS folder to manage user associations for the Version
Control System Integration feature.
Note: You can also manage user associations between Designer and a VCS server from
the Solutions > VCS > User Mapping page in Integration Server Administrator. For more
information about the Version Control System Integration feature, see Conguring the
VCS Integration Feature.
pub.vcs.admin:getUsers
pub.vcs.admin:removeCurrentUser
pub.vcs.admin:removeMultipleUsers
pub.vcs.admin:setCurrentUser
pub.vcs.admin:setMultipleUsers
pub.vcs.admin:getUsers
WmVCS. Returns a list of the Designer user accounts that are associated with a
corresponding version control system (VCS) user account on the VCS server.
954
Odd Header
VCS Folder
Input Parameters
None.
Output Parameters
users
Description
devName
vcsName
Usage Notes
This service is available only to administrator users.
This service is for use with the VCS Integration feature only.
pub.vcs.admin:removeCurrentUser
WmVCS. Removes the currently logged in Designer user account from the list of users
associated with a version control system (VCS) user account on the VCS server.
Input Parameters
None.
Output Parameters
None.
Usage Notes
This service is available to all users. After running this service, the currently logged in
Designer user account is no longer associated with a VCS user account. Nominally, this
prevents the Designer user from checking elements in to and out of the VCS repository.
However, on Windows operating systems, VCS actions will still be submied by
the VCS client with the user's current Windows user name. If the credentials of the
Windows user account match the credentials of a VCS account on the VCS server, the
VCS actions will be completed successfully.
This service is for use with the VCS Integration feature only.
955
Even Header
VCS Folder
The user is advised to check in all checked out elements before running this service.
Version Control System Integration feature will not permit an element to be checked in
by other than the user who checked it out. This service has no eect on the VCS user
account.
pub.vcs.admin:removeMultipleUsers
WmVCS. Removes the specied Designer user accounts from the list of users associated
with a version control system (VCS) user account.
Input Parameters
devNames
Output Parameters
None.
Usage Notes
This service is available only to administrator users. The user account name is casesensitive. After running this service, the Designer user accounts specied in the input
parameters are no longer associated with a VCS user account. Nominally, this prevents
the specied Designer users from checking elements in to and out of the VCS repository.
However, on Windows operating systems, VCS actions will still be submied by
the VCS client with the user's current Windows user name. If the credentials of the
Windows user account match the credentials of a VCS account on the VCS server, the
VCS actions will be completed successfully.
This service is for use with the VCS Integration feature only.
Administrators are advised to verify that all elements checked out by the specied
Designer users are checked in before running this service. The Version Control System
Integration feature feature will not permit an element to be checked in by other than the
user who checked it out. This service has no eect on the VCS user account.
pub.vcs.admin:setCurrentUser
WmVCS. Associates a version control system (VCS) user account with the currently
logged in the Designer user account. For information about restrictions on account
association, see the Usage Notes.
Input Parameters
vcsName
String The name of an existing VCS user account on the VCS server.
956
Odd Header
VCS Folder
vcsPassword
Output Parameters
None.
Usage Notes
This service is available to all users. A Developer user name does not have to be the
same as the associated VCS server user name, and all user account credentials are
case-sensitive. Each Designer user can have one VCS user account associated with the
Designer user account. Although it is possible for more than one Designer user to be
associated with the same VCS user account, Software AG recommends that you avoid
this conguration as it may result in errors or unpredictable results.
This service is for use with the VCS Integration feature only.
After running this service, the currently logged in Designer user account is associated
with a user account on the VCS server, enabling the Designer user to check
elements in to and out of the VCS repository (with proper ACL permissions). This
association is maintained until it is removed with the pub.vcs.admin:removeCurrentUser or
pub.vcs.admin:removeMultipleUsers services. This service does not validate, create, or modify
VCS server accounts.
pub.vcs.admin:setMultipleUsers
WmVCS. Associates a version control system (VCS) user account with the specied
Designer user accounts.
Input Parameters
devNames
Description
devName
vcsName
vcsPassword
957
Even Header
VCS Folder
Output Parameters
None.
Usage Notes
This service is available only to administrator users. A Designer user name does not
have to be the same as the associated VCS server user name, and the user account name
is case-sensitive. Each Designer user can have one VCS user account associated with the
Designer user account. Although it is possible for more than one Designer user to be
associated with the same VCS user account, Software AG recommends that you avoid
this conguration as it may result in errors or unpredictable results.
This service is for use with the VCS Integration feature only.
After running this service, the Designer user accounts specied in the input parameters
are associated with a corresponding user account on the VCS server, enabling the
Designer users to check elements in to and out of the VCS repository (with proper
ACL permissions). This association is maintained until it is removed with the
pub.vcs.admin:removeCurrentUser or pub.vcs.admin:removeMultipleUsers services. This service does
not validate, create, or modify VCS server accounts.
958
Odd Header
XML Folder
41 XML Folder
Summary of Elements in this Folder .........................................................................................
960
959
Even Header
XML Folder
You use the elements in the xml folder to perform operations on XML documents.
pub.xml:documentToXMLString
pub.xml:freeXMLNode
pub.xml:getNextXMLNode
pub.xml:getXMLNodeIterator
pub.xml:getXMLNodeType
pub.xml:loadEnhancedXMLNode
pub.xml:loadXMLNode
pub.xml:queryXMLNode
pub.xml:xmlNodeToDocument
pub.xml:xmlStringToEnhancedXMLNode
pub.xml:xmlStringToXMLNode
960
Odd Header
XML Folder
Element
pub.xml:documentToXMLString
WmPublic. Converts a document (IData object) to an XML string.
This service recurses through a given document, building an XML representation from
the elements within it. Key names are turned into XML elements, and the key values are
turned into the contents of those elements.
This service would convert this document (IData object)...
961
Even Header
XML Folder
<rep>Laura M. Sanchez</rep>
<acctNum type=platinum>G97041A</acctNum>
<phoneNum cc=011>216-741-7566</phoneNum>
<address country=USA>
<street1>10211 Brook Road</street1>
<city>Cleveland</city>
<state>OH</state>
<postalCode>22130</postalCode>
</address>
<address country=USA xsi:type="tns:DerivedAddress">
<street1>10211 Brook Road</street1>
<city>Cleveland</city>
<state>OH</state>
<postalCode>22130</postalCode>
<landMark>Besides Ohio River-Bank Square</landMark>
<telNo>001222555</telNo>
</address>
<serialNum>19970523A</serialNum>
<serialNum>20001106G</serialNum>
<serialNum>20010404K</serialNum>
</tns:AcctInfo>
Note that:
Key names that start with the aribute prex (which, in this example, is the "@"
character) are turned into aributes of the elements in which they occur. For
example, the @type key in the acctNum element is converted to the type=platinum
aribute of the <acctNum> element in the resulting XML String.
Some modules, such as EDI and FlatFile, have elds that begin with the @ symbol
that will be considered aributes regardless of whether the arPrex is @ or another
character. For example, the FlatFile module always considers elds named @recordid and @delimiters to be aributes.
When a document type contains a String variable that represents a required aribute
(meaning that the variable name starts with the "@" symbol and the Required
property is set to True in Designer) and the input document does not contain the
required aribute, Integration Server adds an empty aribute during document
encoding. For example, if the document type contains a required String variable
named @myAribute but @myAribute is missing from the input document,
Integration Server adds myAttribute ="" to the XML document.
Note: Because empty xmlns aributes are invalid, if the document type contains a
required String variable named @xmlns and the input document does not specify a
value for the @xmlns aribute, Integration Serverdoes not add xmlns="" to the XML
document.
Also note that the *body key is used to represent the value of a simple element that
contains both a text value and an aribute. See the acctNum and phoneNum keys for
an example of this kind of element.
The *doctype eld is used to represent the IS document type to which the IData
object conforms. This eld is used to populate the relevant value for the xsi:type
aribute in the XML string. The document type referred by the *doctype eld
should either be created by importing an XSD le (XML schema) or generated while
consuming WSDL for a provider or consumer web service descriptor. You should
962
Odd Header
XML Folder
also select the Register document types with schema type option in the New Document
Type wizard when generating a document type from an XML schema.
Fields that are not String or Document based (for example, Floats or Integers) are
converted to XML values using the underlying object's toString method.
Input Parameters
arPrex
document
nsDecls
963
Even Header
XML Folder
964
Odd Header
XML Folder
You can use this parameter to ensure that the output includes
elements that might not be present in document at run time, or
to describe the order in which elements are to appear in the
resulting XML String.
generateRequiredTags String Optional. Flag indicating whether empty tags are to
be included in the output document if a mandatory element
appears in the document type specied in documentTypeName
but does not appear in document . Set to:
true to include mandatory elements if they are not present in
document.
965
Even Header
XML Folder
buerSize
Key
Description
systemID
publicID
rootNSPrex
rootLocalName
String Optional. Initial size (in bytes) of the String buer that
documentToXMLString uses to assemble the output XML String. If
the String buer lls up before documentToXMLString is nished
generating the XML String, it reallocates the buer, expanding
it by this amount each time the buer becomes full.
If you do not set buerSize , documentToXMLString looks to see
whether a default buer size is specied in the following
parameter on the server:
wa.server.recordToDocument.buerSize
If so, it uses this value to allocate the String buer. If this
parameter is not set, documentToXMLString uses a default buer
size of 4096 bytes.
For best performance, you should always set buerSize to a
value that closely matches the size of the XML String that you
expect documentToXMLString to produce. This practice will spare
the server from having to enlarge the buer repeatedly if the
XML String is many times larger than the default buer or if
you arbitrarily set buerSize to a value that is too small.
Seing buerSize to an appropriately sized value will also
prevent your service from unnecessarily consuming more
memory than it needs if the XML String is much smaller than
the default buer size or if you arbitrarily set buerSize to a
value that is too large.
966
Odd Header
XML Folder
Output Parameters
xmldata
Usage Notes
If you are building an IData that will be converted to an XML String, keep the following
points in mind:
If you want to generate a simple element that contains only a character value,
represent it with a String element in document as shown in the following:
If you want to generate an element that contains children, represent with an IData in
document as shown in the following.
To produce aributes, put the aribute values in keys whose name starts with the
character(s) specied in arPrex . For example, if you use the default arPrex , the
names of all keys containing aributes (and only those keys containing aributes) must
start with the @ character (for example, @type, @xmlns).
Also, when you include aributes, make sure that keys representing aributes are direct
children of the elements in which they are to be applied. For example, if you want to
include an xmlns aribute in the <AcctInfo> element in the example shown in the
description of this service, you must create a String eld named @xmlns in the AcctInfo
eld within document .
If you want to generate a simple element that contains a character value and one or
more aributes, you must represent it as an IData that has one key for each aribute
and a key named *body that contains element's value. For example, if you wanted to
produce the following element:
<phoneNum cc=011>216-741-7566</phoneNum>
967
Even Header
XML Folder
Include the appropriate namespace prex in the key names in document . For
example, to produce an element called acctNum that belongs to a namespace
that is represented by the "GSX" prex, you would include a key named
GSX:acctNum in document .
Dene the URIs for the prexes that appear in document . You can do this through
nsDecls or by including an @xmlns key in the element where you want the xmlns
aribute to be inserted. See the nsDecls description above for more information
about declaring namespaces.
To return the processed XML document to the client that originally submied it, invoke
pub.flow:setResponse. Keep in mind that you may need to modify the encoding.
To generate the xsi:nil aribute for an element in the XML String, the following must be
true:
documentTypeName must be provided.
generateRequiredTags and generateNilTags must be set to true.
The element must correspond to a eld that is nillable. That is, the Allow null property
must be set to True.
If the element corresponds to a document eld, at run time, the document must
not contain any content. However, if the document contains a *body eld, the
pub.xml:documentToXMLString service generates the xsi:nil aribute for the corresponding
element if the value of *body is null.
If a document eld is nillable and is null at run time, the resulting XML String does not
contain any child elements for the element that corresponds to the document.
By default, the pub.xml:documentToXMLString service uses the prex "xsi" for the nil aribute,
where xsi refers to the namespace hp://www.w3.org/2001/XMLSchema-instance.
If nsDecls declares a dierent prex for this namespaces, the service uses that prex
instead of xsi.
pub.xml:freeXMLNode
WmPublic. Frees the resources allocated to a given XML node.
You can optionally call this service when you are using a NodeIterator to iterate over
an XML node and you decide to stop processing the node before reaching the end. By
explicitly calling pub.xml:freeXMLNode, you immediately free the resources associated
with the node instead of waiting for Java garbage collection to do this. Although it is
not mandatory to call this service when you nish processing an XML node with a
NodeIterator, doing so can boost server performance. Note that after you have freed an
XML node using this service, the node becomes unstable and should not be used by any
subsequent processes.
968
Odd Header
XML Folder
Input Parameters
rootNode
Output Parameters
None.
pub.xml:getNextXMLNode
WmPublic. Gets the next XML node from a NodeIterator.
Input Parameters
iterator
Output Parameters
next
Description
name
969
Even Header
XML Folder
node
pub.xml:getXMLNodeIterator
WmPublic. Creates and returns a NodeIterator.
A NodeIterator iterates over the element node descendants of an XML node and returns
the element nodes that satisfy the given criteria. The client application or ow service
uses the service pub.xml:getNextXMLNode to get each node in turn. NodeIterators can only
be created for XML nodes (not for HTML nodes).
getXMLNodeIterator is useful for loading and parsing documents on demand. Large or slow
documents need only be loaded as far as needed to get the desired data. NodeIterators
are also useful for providing service as the pertinent information in the document
arrives rather than rst waiting for the entire document to load. This service is primarily
intended to deal with large documents or documents that arrive slowly.
NodeIterator provides a moving-window mode, in which the only node that is resident
in memory is the last node returned by pub.xml:getNextXMLNode. In this mode, when
pub.xml:getNextXMLNode is called, all nodes preceding the newly returned node become
invalid, including all nodes previously returned by pub.xml:getNextXMLNode. The client
must fully complete processing preceding nodes before advancing the window by
970
Odd Header
XML Folder
The XML node or enhanced XML node for which you want
to produce a NodeIterator. This parameter supports the
following types of input:
com.wm.lang.xml.Node XML node for which you want to
produce a NodeIterator. The node can represent either
an XML document or an element of an XML document;
however, if the NodeIterator will be used in moving-window
mode, a whole XML document must be used. This is because
moving window mode is only meaningful for managing the
loading process of a document, and to operate on a node is to
have already loaded the node
enhanced XML node An enhanced XML node for which
you want to produce a NodeIterator. An enhanced XML
node can be produced by pub.xml:loadEnhancedXMLNode,
pub.xml:xmlStringToEnhancedXMLNode, or a content handler that
receives an XML document in a request for which xmlFormat
is set to enhanced.
criteria
971
Even Header
XML Folder
movingWindow
default.
972
Odd Header
XML Folder
pub.xml:getXMLNodeType
WmPublic. Returns information about an XML node.
Input Parameters
rootNode
Output Parameters
systemID
publicID
rootNamespace
rootNSPrex
rootLocalName
pub.xml:loadEnhancedXMLNode
WmPublic. Retrieves an XML document via HTTP or HTTPS, parses it using the
enhanced XML parser, and produces an org.w3c.dom.Node object.
An DOM node is a special representation of an XML document that can be consumed
by any program that uses standard DOM APIs. The pub.xml:xmlNodeToDocument service can
accept a DOM object as input.
Input Parameters
url
String The URL of the document you want to load. This string
must begin with http: or https:. For example:
973
Even Header
XML Folder
http://www.rubicon.com/orders/orders.html
OR
https://localhost:5555/WmPublic/index.html
auth
Description
type
user
974
Odd Header
XML Folder
data
Description
args
975
Even Header
XML Folder
976
Odd Header
XML Folder
bytes
stream
977
Even Header
XML Folder
978
Odd Header
XML Folder
979
Even Header
XML Folder
Description
isValidating
is the default.
isNamespaceAware
processing.
isCoalescing
data.
980
Odd Header
XML Folder
is the default.
not be replaced.
isSupporting
ExternalEntities
entities.
Output Parameters
node
981
Even Header
XML Folder
status
Usage Notes
If pub.xml:loadEnhancedXMLNode does not receive a response within the timeout period
specied in the server's wa.net.timeout parameter, it will throw an exception. For
information about the wa.net.timeout parameter, see webMethods Integration Server
Administrators Guide.
Use the pub.xml:loadXMLNode service to load an XML document and convert it to an XML
node using the legacy XML parser. For more information about the legacy XML parser
and the enhanced XML parser, see webMethods Integration Server Administrators Guide.
Keep the following information in mind when specifying a partitionSize
The partitionSize is a hint for the enhanced XML parser so that it can estimate the
amount of heap space needed to parse the document. Often, it not possible to
determine the size of an inbound XML document before parsing.
As a general rule, Software AG recommends a partitionSize that is 1/2 the size of the
unparsed XML document.
A partitionSize that is considerably larger than 1/2 the size of the unparsed XML
document causes the enhanced XML parser to consume more heap space than
necessary but might also improve throughput. However, this can impact the
overall performance of Integration Server.
A partitionSize that is considerably smaller than 1/2 the size of the unparsed XML
document causes the enhanced XML parser to create a large number of partitions
to parse the document. While this might use less heap space, it may reduce the
throughput of the parser.
A partitionSize that is three times smaller or three times larger than 1/2 the size of
the unparsed XML document will likely have lile impact on the performance.
982
Odd Header
XML Folder
At run time, the enhanced XML parser overrides a partitionSize that consumes all of
the available heap space.
At run time, if the partitionSize results in an initial heap allocation that exceeds
the single document limit set in the Maximum heap allocation for any single document
eld the limit for all documents set in the Maximum heap allocation for all documents
combined eld, the enhanced XML parser reduces the partition size automatically.
For more information about heap allocation limits for the enhanced XML parser, see
webMethods Integration Server Administrators Guide
If you do not specify partitionSize , the enhanced XML parser uses the default
specied in the Default partition size eld on the Settings > Enhanced XML Parsing page in
Integration Server Administrator.
pub.xml:loadXMLNode
WmPublic. Retrieves an XML document via HTTP or HTTPS, parses it using the legacy
XML parser, and produces an XML node.
An XML node is a special representation of an XML document that can be consumed
by the Integration Server. Most webMethods services that operate on XML documents
require an XML node as input.
Input Parameters
url
String The URL of the document you want to load. This string
must begin with http: or https:. For example:
http://www.rubicon.com/orders/orders.html
OR
https://localhost:5555/WmPublic/index.html
983
Even Header
XML Folder
only certain data elements are valid when you use the GET
method).
If you set method to post, pub.xml:loadXMLNode sends the
values in data in the body of the HTTP or HTTPS request.
auth
Description
type
user
pass
data
984
Odd Header
XML Folder
Key
Description
args
table
985
Even Header
XML Folder
986
Odd Header
XML Folder
stream
encoding
headers
987
Even Header
XML Folder
988
Odd Header
XML Folder
encoding
expandDTD
It is decoded using...
HTML
ISO-8859-1
XML
UTF-8
denition.
default.
Note: You might want or need to use this variable in cases when
you have a syntactically correct document that causes a parse
error because it violates a denition in an external parameterentity reference. By seing expandDTD to false, you can bypass
the external denition so that pub.xml:loadXMLNode can parse the
document successfully
isXML
989
Even Header
XML Folder
String Optional. Flag that species the form in which you want
pub.xml:loadXMLNode to make the parsed document available to
subsequent services. Set to:
bytes to make the document available as a byte array. This is
the default.
990
Odd Header
XML Folder
Output Parameters
node
Usage Notes
If pub.xml:loadXMLNode does not receive a response within the timeout period specied
in the server's wa.net.timeout parameter, it will throw an exception. For information
about the wa.net.timeout parameter, see webMethods Integration Server Administrators
Guide .
If expandGeneralEntities is not specied, Integration Server uses the value in
wa.core.xml.expandGeneralEntities. If wa.core.xml.expandGeneralEntities is not set,
the references to general entities are always expanded.
Use the pub.xml:loadEnhancedXMLNode service to load an XML document and convert it
too an XML node using the enhanced XML parser. For more information about the
legacy XML parser and the enhanced XML parser, see webMethods Integration Server
Administrators Guide.
pub.xml:queryXMLNode
WmPublic. Queries an XML node.
The elds parameter species how data is extracted from the node to produce an output
variable. This output variable is called a "binding," because the elds parameter binds
a certain part of the document to a particular output variable. At run time, this service
must include at least one elds entry. The service must include at least one entry in
elds . The result of each query you specify in elds is returned in a variable whose name
and type you specify.
Input Parameters
node
991
Even Header
XML Folder
elds
Description
name
resultType
Corresponding Data
Type
Object
Object
Object[]
Object List
Record
Document
Record[]
Document List
String
String
String[]
String List
String[][]
String Table
992
Odd Header
XML Folder
query
queryType
onnull
Output Parameters
Document Results from the queries specied in elds . This service returns one element for
each query specied in elds . The specic names and types of the returned elements are
determined by the elds/name and eld/resultType parameters of the individual queries.
Usage Notes
If pub.xml:queryXMLNode fails, it throws a server exception. Common reasons for
queryXMLNode to fail include:
A variable that has no query string assigned to it.
A syntax error in a query string.
A query fails the Allows Nulls test.
993
Even Header
XML Folder
pub.xml:xmlNodeToDocument
WmPublic. Converts an XML node to a document (an IData object).
This service transforms each element and aribute in the XML node to an element in an
IData object. For example:
This service would convert this XML document...
<?xml version="1.0" ?>
<tns:AcctInfo>
xmlns:tns="http://localhost/DerivedAddress/schema.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<name>Midwest Extreme Sports</name>
<rep>Laura M. Sanchez</rep>
<acctNum type=platinum>G97041A</acctNum>
<phoneNum cc=011>216-741-7566</phoneNum>
<address country=USA>
<street1>10211 Brook Road</street1>
<city>Cleveland</city>
<state>OH</state>
<postalCode>22130</postalCode>
</address>
<address country=USA xsi:type="tns:DerivedAddress">
<street1>10211 Brook Road</street1>
<city>Cleveland</city>
<state>OH</state>
<postalCode>22130</postalCode>
<landMark>Besides Ohio River-Bank Square</landMark>
<telNo>001222555</telNo>
</address>
<serialNum>19970523A</serialNum>
<serialNum>20001106G</serialNum>
<serialNum>20010404K</serialNum>
</tns:AcctInfo>
994
Odd Header
XML Folder
Note that:
The XML version aribute is converted to an element named @version.
The resulting document is given the same name as the XML document's root element
(AcctInfo in the example above) and is a child of the document variable that this
service returns.
Simple elements (such as <name> and <rep> in the example above) are converted to
String elements.
Complex elements (that is, elements with children, such as <address> in the
example above) and simple elements that have aributes (such as <acctNum> and
<phoneNum>) are converted to documents (IData objects). Note that keys derived
from aributes are prexed with a "@" character to distinguish them from keys
derived from elements. Also note that when a simple element has an aribute, its
value is placed in an element named *body.
Repeated elements (such as <serialNum>) can be collected into arrays using
the makeArrays and/or arrays parameters. See makeArrays and arrays below for
additional information about producing arrays.
995
Even Header
XML Folder
arPrex
arrays
996
Odd Header
XML Folder
Value
name
originator
rep
originator
997
Even Header
XML Folder
documents
998
Odd Header
XML Folder
mixedModel
999
Even Header
XML Folder
Set to:
true to place top-level text in an element named *body.
Important: When you set mixedModel to true, you must also use
documentTypeName to specify a document type that describes
the structure of the IData that you want xmlNodeToDocument to
produce. Within the document type, mixed-content elements
must be dened as documents that include a String eld
named *body.
false to omit top-level text and include only the child
preserveUndeclaredNS
1000
Odd Header
XML Folder
preserveNSPositions
Usage Notes
If the IS document type in documentTypeName accurately represents the content model
for the complex type from which it was created (the Model type property value is not
Unordered), when Integration Server converts an XML node to a document (IData),
Integration Server matches up the contents of an element in the XML node with the
content model of the IS document type. If a mismatch occurs and Integration Server
is unable to map the XML node contents to the IS document type, Integration Server
appends the remaining data to the resulting document (IData). Integration Server
stops aempting to map the XML node content to a eld in the IS document type. This
mismatch does not result in an error at the time the document is created. However, the
document would fail validation by the pub.schema:validate service.
Following are examples of XML documents and the documents (IData objects) that
xmlNodeToDocument would produce.
XML Document
<myDoc>
<e1>e1Value</e1>
</myDoc>
1001
Even Header
XML Folder
XML Document
<?xml version="1.0"
encoding="UTF-8"?>
<myDoc>
<e1 e1Attr="attrValue1">e1Value1</e1>
<e2>e2Value</e2>
<e1 e1Attr="attrValue2">e1Value2</e1>
</myDoc>
1002
Odd Header
XML Folder
XML Document
<?xml version="1.0"
encoding="UTF-8"?>
<myDoc>
<e1 e1Attr="attrValue1">e1Value1</e1>
<e2>e2Value</e2>
<e1 e1Attr="attrValue2">e1Value2</e1>
</myDoc>
1003
Even Header
XML Folder
XML Document
<?xml version="1.0"
encoding="UTF-8"?>
<myDoc>
<e1 e1Attr="attrValue1">e1Value1</e1>
<e2>
<e3>e3Value</e3>
<e4 e4Attr="attrValue4"
e4Attrb="attrValue4b">e4Value
</e4>
</e2>
</myDoc>
pub.xml:xmlStringToEnhancedXMLNode
WmPublic. Converts an XML document (represented as a String, byte[ ], or
InputStream) to an org.w3c.dom.Node object using the enhanced XML parser.
An DOM node is a special representation of an XML document that can be consumed
by any program that uses standard DOM APIs. The pub.xml:xmlNodeToDocument service
accepts a DOM object as input.
Input Parameters
xmldata
$ledata
1004
Odd Header
XML Folder
encoding
inputProcessing
Description
isValidating
the default.
isNamespaceAware
isCoalescing
1005
Even Header
XML Folder
the default.
not be replaced.
isSupporting
ExternalEntities
1006
Odd Header
XML Folder
Output Parameters
org.w3c.dom.Node XML node representing the returned XML
document. This object can be used as input to webMethods
services that consume XML nodes in the form of a DOM
object.
node
Usage Notes
The input parameters xmldata , $ledata , and $lestream are mutually exclusive. Specify
only one of the preceding parameters. Integration Server checks the parameters in
the following order, using the value of the rst parameter that has a specied value:
$ledata , $lestream , and xmldata .
Use the pub.xml:xmlStringToXMLNode service to convert an XML document to an XML node
using the legacy XML parser. For more information about the legacy XML parser and
the enhanced XML parser, see webMethods Integration Server Administrators Guide.
Keep the following information in mind when specifying a partitionSize
The partitionSize is a hint for the enhanced XML parser so that it can estimate the
amount of heap space needed to parse the document. Often, it not possible to
determine the size of an inbound XML document before parsing.
As a general rule, Software AG recommends a partitionSize that is 1/2 the size of the
unparsed XML document.
A partitionSize that is considerably larger than 1/2 the size of the unparsed XML
document causes the enhanced XML parser to consume more heap space than
necessary but might also improve throughput. However, this can impact the
overall performance of Integration Server.
A partitionSize that is considerably smaller than 1/2 the size of the unparsed XML
document causes the enhanced XML parser to create a large number of partitions
to parse the document. While this might use less heap space, it may reduce the
throughput of the parser.
A partitionSize that is three times smaller or three times larger than 1/2 the size of
the unparsed XML document will likely have lile impact on the performance.
At run time, the enhanced XML parser overrides a partitionSize that consumes all of
the available heap space.
At run time, if the partitionSize results in an initial heap allocation that exceeds
the single document limit set in the Maximum heap allocation for any single document
eld the limit for all documents set in the Maximum heap allocation for all documents
combined eld, the enhanced XML parser reduces the partition size automatically.
For more information about heap allocation limits for the enhanced XML parser, see
webMethods Integration Server Administrators Guide
1007
Even Header
XML Folder
If you do not specify partitionSize , the enhanced XML parser uses the default
specied in the Default partition size eld on the Settings > Enhanced XML Parsing page in
Integration Server Administrator.
pub.xml:xmlStringToXMLNode
WmPublic. Converts an XML document (represented as a String, byte[ ], or
InputStream) to an XML node.
An XML node is a special representation of an XML document that can be consumed
by the Integration Server. Most webMethods services that operate on XML documents
require an XML node as input.
Input Parameters
xmldata
$ledata
$lestream
encoding
expandDTD
denition.
1008
Odd Header
XML Folder
default.
isXML
Output Parameters
node
Usage Notes
The input parameters xmldata , $ledata , and $lestream are mutually exclusive. Specify
only one of the preceding parameters. Integration Server checks the parameters in the
following order, using the value of the rst parameter with a specied value: $ledata ,
$lestream , and xmldata .
If expandGeneralEntities is not specied, Integration Server uses the value in
wa.core.xml.expandGeneralEntities. If wa.core.xml.expandGeneralEntities is not set,
the references to general entities are always expanded.
Use the pub.xml:xmlStringToEnhancedXMLNode service to convert an XML document to an
XML node using the enhanced XML parser. For more information about the legacy XML
parser and the enhanced XML parser, see webMethods Integration Server Administrators
Guide.
1009
Even Header
1010
Odd Header
XSLT Folder
42 XSLT Folder
Summary of Elements in this Folder .......................................................................................
1012
1011
Even Header
XSLT Folder
You use the elements in the XSLT folder to transform XML into a byte array, le, or XML
node, and to maintain the XSLT stylesheet cache.
pub.xslt.Transformations:transformSerialXML
pub.xslt.Cache:removeAllTemplates
pub.xslt.Cache:removeTemplate
The WmXSLT package also comes with sample services that show you how to use the
public services.
pub.xslt.Transformations:transformSerialXML
WmXSLT. Uses an XSLT stylesheet to transform XML, then stores the transformed XML
in a byte array, le, or XML node.
To optimize performance, the service stores the XSLT stylesheet in a cache so the
stylesheet will be instantly available to the service for later runs.
Input Parameters
stylesheetSystemId
systemId
lename
1012
Odd Header
XSLT Folder
xmlStream
xslParamInput
resultType
outFileName
useCompiling
Processor
1013
Even Header
XSLT Folder
node
xslParamOutput
1014
Odd Header
XSLT Folder
Example
You want to transform an XML document named cdCatalog.xml into an HTML
document using an XSLT stylesheet named cdCatalog.xsl. You would pass the
transformSerialXML service these values:
Input Parameters
stylesheetSystemId
http://localhost:5555/WmXSLT/samples/xdocs/
cdCatalog.xsl
systemId
http://localhost:5555/WmXSLT/samples/xdocs/
cdCatalog.xml
resultType
bytes
The service transforms the XML stream into a byte array containing an HTML document
and puts the byte array in the pipeline. You could convert the byte array into a String
using the Integration Server built-in service pub.string:bytesToString, then display the String
using a dynamic server page (DSP). For information about using DSPs, see Dynamic
Server Pages and Output Templates Developers Guide.
Usage Notes
If loadExternalEntities is set to false, you can have the service load, read, and transform
content from a trusted external entity by doing one of the following:
Place the trusted external entity le in the Integration Server installation directory or
subdirectories.
Include the trusted external entity in the list of trusted entities identied in the server
parameter wa.core.xml.allowedExternalEntities. For more information about this
parameter, see webMethods Integration Server Administrators Guide.
If loadExternalEntities is not specied in the service signature, Integration Server checks
the value of the server parameter wa.core.xml.expandGeneralEntities. If this parameter
is set to false, the transformSerialXML service blocks all external entities that are not
included in the list of trusted entities specied in wa.core.xml.allowedExternalEntities.
For more information about wa.core.xml.expandGeneralEntities, see webMethods
Integration Server Administrators Guide.
pub.xslt.Cache:removeAllTemplates
WmXSLT. Clears the XSLT stylesheet cache.
1015
Even Header
XSLT Folder
Input Parameters
None.
Output Parameters
message
String Indicates whether the service was able to clear the cache.
pub.xslt.Cache:removeTemplate
WmXSLT. Removes one stylesheet from the XSLT stylesheet cache.
Input Parameters
stylesheetSystemId
String URI for the XSLT stylesheet to remove from the cache.
Output Parameters
message
1016
M
Index
Index
A
absoluteValue 494
access permissions assigned to built-in services 24
ACLs assigned to built-in services 24
action 810
activatePackage 546
addBodyBlock 721
addBodyEntry 777
addBodyPart 517
addComplexTask 623
addFaultBlock 724
addFloatList 494
addFloats 495
addHeaderBlock 726
addHeaderEntry 779
adding
body parts to MIME messages 517
documents to list 485
entries into a data store 845
MIME message headers 521
numeric values 494, 495, 496, 497
strings to list 486
addIntList 496
addInts 497
addItemToVector 484
addMimeHeader 521
addObjects 497
addOnetimeTask 626
addReleaseRegistryEntry 605
addRepeatingTask 628
addSubscriber 242
addTrailer 781
alarm specification 245
alarmInfo document type 246
appending data to a remote file 92
appendToDocumentList 485
appendToStringList 486
arithmetic services 492
ART folder 28
ART services 28
asynchronous call to a remote server 601
asynchronous request/reply
delivering request 569
description of 570, 585
publishing request 583
publishing request to a specific client 569
backupPackage 547
base64 Decode 860
base64Encode 860
binding
output template to Values object 618
BPEL folder 511, 933
byte 390
byte array from string 871
bytesToDocument 223
bytesToFile 306
bytesToStream 391
bytesToString 861
Cache folder 53
calculateDateDifference 181
call 194
calling stored procedures 194
callStackItem document type 252
cancelTask 631
canonical document, definition 885
canonical keys
creating 885
inserting 889
retrieving 887
cd 92, 135
cdgrp 136
cdls 93, 107
certificate chain 663
certs-only S/MIME Message
creating 697
extracting certificates from 702
changing the working directory 92, 135
character sequence, indexing first occurrence 863
checkFileExistence 307
chmod 136
chown 137
clear pipeline 356
clearing transactional state 196
clearKeyAndChain 663
clearTransaction 196
1017
M
Index
Client folder 84
close 392
close connection 197
closeAll 198
closeLatch 882
closeStore 846
closing database connection 197
committing changes to a database 198
commitTransaction 47
compatibility mode 947
complex tasks
adding to scheduler 623
updating to scheduler 639
components
XML schema definitions 657
concatenating
array of strings 866
strings 861
connections
creating 199
containsKey 384
content type, getting from MIME message 529
converting
string list to document list 487
XML nodes to IData objects 994
converting to
InputStream 390
convertToString service 320
convertToValues service 325
copyFile 307
createByteArray 392
createCertsOnlyData 697
createDocumentType service 335
createEncryptedData 697
createFFDictionary service 335
createHashtable 385
createJMSTrigger 893
createMessageDigest 678
createMimeData 523
createSignedAndEncryptedData 557, 698
createSignedData 559, 700
createSoapData 787
createTrigger 907
createXReference 885
createXSD 651
creating MIME messages 523
cross-references
creating 885
deleting by object ID 886
da teTimeFormat 185
data
converting 390
waiting for delivery 879
data stores
adding entries 845
closing 846
deleting 846
inserting entries 852
registering 853
removing entries 854
retrieving values 847
unlocking entries 852, 855
unregistering 846
updating entries 852
database connection, closing 197, 198
database services 192
databases
clearing transactional state 196
closing connections 197, 198
committing changes 198
creating connections 199
deleting rows 201
discarding changes 216
invoking stored procedures 194
querying 215
retrieving names of stored procedures 208
retrieving tables 211
starting a transaction 217
datatypes in XML schemas 657, 657
Date folder 175
dateBuild 182
dates
converting formats 185
formatting 187
invalid dates 180
returning current 188, 188
symbols used for 176
time zones 177
dateTimeBuild 183
1018
M
Index
1019
M
Index
documentToXMLString 961
documentToXMLValues 230
dynamic text generation 618
eda
event 254
eventToDocument 255
schema_event 257
elapsedNanoTime 186
elements, number of in a list 487
enableConnection 31
enableListener 35
enableListenerNotification 39
enablePackage 549
enablePollingNotification 40
encoding schema, SOAP 777
encoding schema,SOAP, version 1.2 777
encoding URL strings 875
encrypting MIME messages 557, 697
ending guaranteed delivery transactions 597
Enterprise Gateway specification 666
entries
inserting into repository 845
envelope schema, SOAP 777
envelope schema,SOAP, version 1.2 777
envelope stream, generating from MIME message
529
envelope, for published documents 573
error event 263, 263
error notification document type 591
error service 591
event
creating subscription for 242
sending 257, 283
event document type 254
Event folder 237
event handle rs
get list of subscribers 270
event handlers 238
alarm specification 245
alarmInfo document type 246
audit specification 247
auditError specification 248
auditErrorInfo document type 250
auditInfo document type 251
callStackItem document type 252
exception specification 264
faultTo 810
FFDictionary IS document type 338
FFSchema IS document type 341
fields, removing from pipeline 356
File folder 303
file object, templates 616
1020
M
Index
1021
M
Index
getNextXMLNode 969
getNumParts 532
getPoolInfo 402
getPrimaryContentType 533
getProcInfo 207
getProcs 208
getQName 796
getRedeliveryCount service 578
getRemoteReleasedList 610
getSession 359
getStatus 597
getSubContentType 534
getSubscribers 270
getSupportedEncodings 334
getTableInfo 210
getTables 211
getTaskIDs 631
getTaskInfo 632
getTrailer service 797
getTransportInfo 359
getUsers 954
getWebServiceInvocationProperties 753
getWorkingDays 189
getXMLNodeIterator 970
getXMLNodeType 973
guaranteed delivery services 594
guaranteed delivery transactions
ending 597
getting status of 597
invoking service 598
restarting 599
retrieving results of 599
starting 600
guaranteed one-way call 600
IData objects
converting to JSON strings 479
converting to XML strings 961
creating from JSON streams 480
creating from JSON strings 481
IDs, retrieving list of 631
indexOf 863
InputStream, converting to byte 390
inserting table rows 213
insertXReference 889
installPackage 549
integers
adding 496
dividing 499
multiplying 503
subtracting 508
invalid dates 180
invoke, guaranteed delivery service 598
invokeService 360
invoking
remote services 594
report services 616
stored procedures 194
invoking a service
guaranteed delivery 601
protocols used 375
remote webMetho ds Int egration Server 595
IO services 390
IS Internal 840
isLatchClosed 883
iterating through XML nodes 970
1022
M
Index
dele te 916
journal event 275, 276
JSON streams
converting to IData objects 480
JSON strings
converting to IData objects 481
creating from documents 479
jsonStreamToDocument 480
jsonStringToDocument 481
makeString 866
mark 393
markSupported 394
Math folder 491
math services 492
max 500
mdelete 103
mergeHeaderAndBody 535
messageFormat 866
messageID 813
mget 104
MIME messages
adding body parts to 517
adding headers to 521
creating 523
creating encrypted messages 697
creating signed messages 700
decrypting 702
discovering content type 529
discovering number of parts 532
discovering subtype 534
generating message stream 529
getting content from 526
getting headers from 531
getting part headers from 527
getting top-level portion 533
merging HTTP response into InputStream 535
sending through SMTP 145
signing and encrypting 557, 698
verifying signed messages 703
MIME services 516
min 501
mkdir 141
modifySubscriber 278
moveFile 311
mput 104
multiple VCS users
removing 956
setting 957
1023
M
Index
multiplyFloatList 501
multiplyFloats 502
multiplyIntList 503
multiplyInts 504
multiplyObjects 505
setting 671
updating 675
output templates 616
1024
M
Index
pub.client.ftp
append 92
cd 92
cdls 93
delete 94
dir 94
get 95
login 98
logout 101, 139
ls 102, 140
mdele te 103
mget 104
mput 104, 105
put 105, 141
putCompletedNotification 107
quote 108
rename 108
sessioninfo 109
pub.client.oauth
executeRequest 131
pub.client.sftp
cd 135
chgrp 136
chmod 136
chown 137
get 137
login 139
mkdir 141
pwd 142
rename 143
rm 144
rmdir 144
symlink 145
pub.date
calculateDateDifference 181
currentNanoTime 182
dateBuild 182
dateTimeBuild 183
dateTimeFormat 185
elapsedNanoTime 186
formatDate 187
getCurrentDate 188
getCurrentDateString 188
getWorkingDays 189
pub.db
call 194
clearTransaction 196
close 197
closeAll 198
1025
M
Index
commit 198
connect 199
delete 201
execSQL 203
getProcInfo 207
getProcs 208
getTableInfo 210
getTables 211
insert 213
query 215
rollback 216
startTransaction 217
update 218
pub.document
bytesToDocument 223
documentListToDocument 224
documentToBytes 226
documentToDocumentList 228
documentToXMLValues 230
XMLValuesToDocument 234
pub.e vent.eda
event 254
pub.event
addSubscriber 242
alarm 245
alarmInfo 246
audit 247
auditError 248
auditErrorInfo 250
auditInfo 251
callstack Item 252
deleteSubscriber 252
error 263
errorInfo 263
exception 264
exceptionInfo 266
gdEnd 267
gdEndInfo 268
gdStart 268
gdStartInfo 269
getEventTypes 270
getSubsc ribers 270
journal 275
journalInfo 276
modifySubscriber 278
portStatus 286
portStatusInfo 286
reloadEventManagerSettings 287
replication 287
replicationInfo 288
saveEventManagerSettings 289
security 289
securityInfo 291
sessionEnd 292
sessionEndInfo 293
sessionExpire 294
sessionExpireInfo 294
sessionStart 295
sessionStartInfo 296
stat 296
statInfo 298
tx End 300
tx EndInfo 300
txStart 301
txStartInfo 302
pub.event.eda
eventToDocument 255
schema_event 257
send 257
pub.event.nerv
eventToDocument 282
send 283
pub.file
bytesToFile 306
checkFileExistence 307
copyFile 307
deleteFile 308
getFile 309
listFiles 310
moveFile 311
readerToFile 312
streamToFile 313
stringToFile 314
pub.flatFile
convertToString 320
convertToValues 325
FormatService 331
getSupportedEncodings 334
pub.flatFile.generate
createDocumentType 335
createFFDictionary 335
deleteFFDictionary 336
deleteFFDictionaryEntry 337
deleteFFSchema 338
FFDictionary IS document type 338
FFSchema IS document type 341
findDependants 344
findReferences 344
1026
M
Index
getFFDictionaryAsXML 345
getFFDictionaryEntryAsXML 346
getFFSchemaAsXML 346
listFFDictionaryEntries 347
saveXMLAsFFDictionary 348
saveXMLASFFSchema 349
updateFFDictionaryEntryFromXML 351
pub.flow
clearPipeline 356
debugLog 356
getLastError 357
getRetryCount 358, 905
getSession 359
getTransportInfo 359
invokeService 360
restorePipeline 361
restorePipelineFromFile 362
savePipeline 363
savePipelineToFile 364
setCustomContextID 365
setResponse 366
setResponseCode 370
setResponseHeader 370
setResponseHeaders 373
throwExceptionForRetry 374
tracePipeline 375
transportInfo 375
pub.hashtable
containsKey 384
createHashtable 385
get 385
listKeys 385
put 386
remove 386
size 387
pub.io
bytesToStream 391
close 392, 392
createByteArray 392, 392
mark 393
markSupported 394
read 395, 395
readAsString 395
readerToString 396
reset 397, 397
skip 397, 397
streamToBytes 398, 398
streamToReader 399
streamToString 399
stringToReader 400
stringToStream 400
pub.jms
documentResolverSpec 412
reply 421
send 429
pub.jms.wmjms
sendStream 474
pub.json
documentToJSONString 479
jsonStreamToDocument 480
jsonStringToDocument 481
pub.list
addItemToVector 484
appendToDocumentList 485
appendToStringList 486
sizeOfList 487
stringListToDocumentList 487
vectorToArray 488
pub.math
absoluteValue 494
addFloatList 494
addFloats 495
addIntList 496
addInts 497
addObjects 497
divideFloats 498
divideInts 499
divideObjects 500
max 500
min 501
multiplyFloatList 501
multiplyFloats 502
multiplyIntList 503
multiplyInts 504
multiplyObjects 505
randomDouble 505
roundNumber 506
subtractFloats 506
subtractInts 508
subtractObjects 508
toNumber 509
pub.mime
addBodyPart 517
addMimeHeader 521
createMimeData 523
getBodyPartContent 526
getBodyPartHeader 527
getContentType 529
1027
M
Index
getEnvelopeStream 529
getMimeHeader 531
getNumParts 532
getPrimaryContentType 533
getSubContentType 534
mergeHeaderAndBody 535
pub.packages
backupPackage 547
disablePackage 548
enablePackage 549
installPackage 549
recoverPackage 551
reloadPackage 552
pub.pki.pkcs7
sign 554
verify 556
pub.pki.smime
createSignedAndEncryptedData 557
createSignedData 559
processEncryptedData 559
processSignedData 561
pub.publish
deliver 567
deliverAndWait 568
documentResolverSpec 571
envelope 573
getRedeliveryCount 578
publish 580
publishAndWait 582
reply 586
syncDocuments 588
waitForReply 589, 589
pub.publish.notification
error 591
pub.remote
invoke 595
pub.remote.gd
end 597
getStatus 597
invoke 598
restart 599
retrieve 599
send 600
start 600
submit 601
pub.replicator
addReleaseRegistryEntry 605
deleteReleaseRegistryEntry 606
distributeViaFTP 607
distributeViaSvcPull 608
distributeViaSvcPush 609
generateReplicationEvent 609
getLocalReleasedList 609
getRemoteReleasedList 610
notifyPackageRelease 611
packageCreation 612
pub.report
runFileTemplate 616
runFileTemplateOnPipe 617
runStringTemplate 617
runStringTemplateOnPipe 618
runTemplate 618
runTemplateOnPipe 619
pub.scheduler
addComplexTask 623
addOnetimeTask 626
addRepeatingTask 628
cancelTask 631
getTaskIDs 631
getTaskInfo 632
getUserTaskList 636
migrateTasksToJDBC 636
resumeTask 637
suspendTask 638
updateComplexTask 639
updateOneTimeTask 642
updateRepeatingTask 644
pub.schema
createXSD 651
validate 653
validatePipeline 656
pub.schema.w3c 657
datatypes 657
structures 657
xml 657
xsi 657
pub.security
clearKeyAndChain 663
setKeyAndChain 664
setKeyAndChainFromBytes 665
pub.security.enterpriseGateway
alertSpec 666
pub.security.keystore
getCertificate 668
getKeyAndChain 669, 669
getTrustedCertificates 669
setKeyAndChain 670
pub.security.keystore.pkcs7
1028
M
Index
sign 670
pub.security.outboundPasswords
listKeys 674
removePassword 674
setPassword 671
updatePassword 675
pub.security.pkcs7
sign 675
verify 677
pub.security.util
convertSecureString 681
createMessageDigest 678
createSecureString 680
destroySecureString 682
getCertificateInfo 679
loadPKCS7CertChain 680
pub.smime
createCertsOnlyData 697
createEncryptedData 697
createSignedAndEncryptedData 698
createSignedData 700
processCertsOnlyData 702
processEncryptedData 702
processSignedData 703
pub.smime.keystore
createSignedAndEncryptedData 706
createSignedData 708
processEncryptedData 708
pub.soa p.wsa
to 817
pub.soap.ha ndler
registerConsumer 762
pub.soap.handler
addBodyBlock 721
addFau ltBlock 724
addHeaderBlock 726
generateDocumentTypesFromWSDL 733
getBodyBlock 735
getBodyBlockQNames 737
getFaultBlock 738
getInitialSOAPRequest 746
getMessageAddressingProperties 747
getServicePipeline 750
getWebServiceInvocationProperties 753
hasFaultMessage 756
listConsumer 757
listProvider 758
registerConsumer 730, 743, 749, 752, 755, 759,
760, 766, 767, 768, 769
registerProvider 760
removeBodyBlock 763
removeHeaderBlock 764
unregis terCons umer 769
unregisterProvider 770
updateFaultBlock 770
pub.soap.processor
list 772
processMessage 774
processRPCMessage 774
registerProcessor 775
unregisterProcessor 776
pub.soap.schema
encoding 777
encoding_1_2 777
envelope 777
envelope_1_2 777
pub.soap.ut ils
stringToSoapData 808
pub.soap.utils
addBodyEnt ry 777
addHeaderEntry 779
addTrailer 781
createSoapData 787
exitUnabl eToUnderstand 789
getActor 790
getBody 791
getBodyEntries 791
getDocument 792
getEncoding 793
getHeader 793
getHeaderEntries 794
getMustUnderstand 795
getQName 796
getTrailer 797
QName 799
removeBodyEntry 800
removeHeaderEntry 801
removeTrailer 802
requestResponseSpec 803
soapDataToBytes 805
soapDataToString 805
streamToSoapD ata 807
validateSoapData 809
pub.soap.wsa
action 810
faultTo 810
from 812
messageID 813
1029
M
Index
problemAction 813
problemHeaderQName 814
problemIRI 814
relatesTo 815
replyTo 816
retryAfter 817
schema_wsa 818
pub.soap.wsa.submission
act ion 818
faultTo 819
from 821
messageID 822
relatesTo 823
replyTo 824
retryAfter 826
schema_wsa_submission 827
to 826
pub.soap.wsrm
closeSequ ence 827
createSequence 828
sendAcknowledgementRequest 833
waitUntilSequenceCompleted 836
pub.storage
add 845
checkpoint restart example 843
closeStore 846
data store locking 841
deleteStore 846
entry locking 841
get 847
keys 848
listLocks 849
lock 850
lock duration 842
lock wait time 842
put 852
registerStore 853
releaseLocks 853
remove 854
short-term store 840
unlock 855
pub.string
base64Decode 860
base64Encode 860
bytesToString 861
concat 861
HTMLDecode 862
HTMLEncode 862
indexOf 863
length 864
lookupDictionary 864
lookupTable 865
makeString 866
messageFormat 866
numericFormat 867
objectToString 868
padLeft 869
padRight 870
replace 871
stringToBytes 871
substring 872
tokenize 872
toLower 873
toUpper 873
trim 874
URLDecode 874
URLEncode 875
pub.sync
notify 878
shutdown 879
wait 879
pub.synchronization.latch
closeLatch 882
isLatchClosed 883
openLatch 884
pub.synchronization.xref
createXReference 885
deleteByObjectId 886
deleteXReference 886
getCanonicalKey 887
getNativeId 888
insertXReference 889
pub.trigger
createJMSTrigger 893
createTrigger 907
deleteJMSTrigger 916
resumeProcessing 921
resumeRetrieval 924
suspendProcessing 928
suspendRetrieval 930
pub.universalName
find 938
list 939
listAll 940
pub.utils
deepClone 944
executeOSCommand 945
generateUUID 947
1030
M
Index
getServerProperty
retrieves value of a server property 947
pub.utils.ws
setCompatibilityModeFalse 947
pub.vcs.admin
getUsers 954
removeCurrentUser 955
removeMultipleUsers 956
setCurrentUser 956
setMultipleUsers 957
pub.xml
documentToXMLString 961
freeXMLNode 968
getNextXMLNode 969
getXMLNodeIterator 970
getXMLNodeType 973
loadEnhancedXMLNode 973
loadXMLNode 983
queryXMLNode 991
xmlNodeToDocument 994
xmlStringToEnhancedXMLNode 1004
xmlStringToXMLNode 1008
pub.xslt.Transformations
transformSerialXML 1012
publish service 580
publish/subscribe, latching and cross-referencing
operations 882
publishAndWait service 582
publishing packages 604
addReleaseRegistryEntry 605
deleteReleaseRegistryEntry 606
distributeViaFTP 607
distributeViaSvcPull 608
distributeViaSvcPush 609
generateReplicationEvent 609
getLocalReleasedList 609
getRemoteReleasedList 610
notifyPackageRelease 611
packageCreation 612
put 386
put (FTP) files 105
put (SFTP) files 141
queryListenerState 36
queryPollingNotificationState 43
queryXMLNode 991
quote 108
1031
M
Index
S/MIME messages
creating certs-only message 697
creating encrypted messages 697
creating signed messages 700
creating using PKI profiles 554
decrypting 559, 702
extracting certificates from certs-only message
702
verifying signed messages 561, 703
S/MIME services 696
saveEventManagerSettings 289
savePipeline 363
savePipelineToFile 364
saveXML AsFFDictionary service 348
saveXMLASFFSchema service 349
sc hemas
schema_ws a_submission 827
scheduler
adding complex tasks 623
adding one-time tasks 626
canceling tasks 631
recurring tasks 628
1032
M
Index
setMultipleUsers 957
setPollingNotificationNodeConnection 45
setResponse 366
setResponse2 368
setResponseCode 370
setResponseHeader 370
setResponseHeaders 373
setTransactionTimeout 49
SFTP
changing file owner 137
changing owner group 136
changingpermissions 136
file transfer 141
login 139
re move files 144
remove directory 144
renaming files 143
retrieving files 137
symbolic link between files 145
transferring files 141
view remote working directory 142
sftp working directory, changing 135
short-term store 840
shutdown service 879
signed data object, creating 675
SignedData objects 554
signing and encrypting MIME messages 557
signing MIME messages 559, 700, 703
size 387
sizeOfList 487
skip 397
SMTP servers, submitting requests to 110
SMTP, sending MIME messages 145
SOAP
actor attribute 790
adding body entries 777
adding header entries 779
converting SOAP object to Byte Array 805
converting SOAP object to String 805
converting stre am to SOAP object 807
converting string to SOAP object 808
creating SOAP objects 787
en coding schema, ve rsion 1.2 777
encoding schema 777
envelope schema 777
envelope schema, version 1.2 777
executing the default processor 774
executing the default RPC processor 774
getting body entries 791, 791, 797
1033
M
Index
1034
M
Index
strings
adding to list 486
base64 decoding 860
base64 encoding 860
byte array conversion 861
concatenating 861
concatenating an array of strings 866
converted from documents 230
converting list to document list 487
converting to byte array 871
converting to lower case 873
converting to uppercase 873
decoding URL-encoded 874
HTML to native characters 862
length of 864
native characters to HTML 862
padding beginning 869
padding end 870
replacing all 871
returning substring of 872
tokenizing into an array 872
transformation services 858
trimming white space 874
URL-encoding 875
XML values to a document 234
stringToBytes 871
stringToFile 314
stringToReader 400
stringToSoapData 808
stringToStream 400
submis sion action 818
submission
faultTo 819
from 821
messageID 822
relatesTo 823
replyTo 824
retryAfter 826
to 826
submitting an asynchronous call to a remote server
601
subscribing to packages 604
subscriptions, creating 242
substring 872
indexing first occurrence 863
subtractFloats 506
subtractInts 508
subtractObjects 508
subtype, getting from MIME message 534
tables
inserting rows 213
removing rows 201
retrieving column information 210
retrieving names of 211
retrieving rows from 215
updating all rows 218
tasks
adding complex to scheduler 623
adding one-time to scheduler 626
adding recurring to scheduler 628
migrating to external database 636
obtaining information about 632
obtaining list of 636
removing from scheduler 631
resuming 637
retrieving IDs for 631
suspending 638
updating complex to scheduler 639
updating one-time to scheduler 642
updating repeating to scheduler 644
templates
applying to a document 616
applying to pipeline 617, 618
from string objects 617
1035
M
Index
validatePipeline 656
validateSoapData 809
validating an object 653
VCS folder 953
VCS Integration feature 954
getting users 954
remove current user 955
remove multiple users 956
set current user 956
set multiple users 957
vectorToArray 488
verifying digital signatures 677
verifying signed data objects 556
1036
M
Index
WmSecureString 680
converting 681
creating 680
destroying 682
working directory, changing 92
wsrm
closeSequence 827
createSequence 828
sendAcknowledgementRequest 833
waitUntilSequenceCompleted 836
XML
datatypes 657
pub.schema.w3c 657, 657
XML documents
conv erting to IData objects 994
converting to XML nodes 1004, 1008
XML nodes
creating from XML string 1004, 1008
extracting data from 991
freeing 968
getting type info 973
loading from URL 973, 983
querying 991
XML schemas
components 657
datatypes 657
XML services 960
XML strings
creating from documents 961
XML strings, creating from documents
handling special characters 964
XML values
converting from a document 230
xmlNodeToDocument 994
xmlStringToEnhancedXMLNode 1004
xmlStringToXMLNode 1008
XMLValuesToDocument 234
XQL queries 991
XSLT folder 1011
XSLT services
maintaining the stylesheet cache 1012
transforming an XML stream 1012
1037