Title: SOA-2:%20OpenEdge
1SOA-2 OpenEdge 10.1A Adapters for SonicMQ
- New Install, New Architecture, and New APIs
Cheryl LaBarge
Senior Training Program Manager
2Agenda
OpenEdge 10.1A Adapters for SonicMQ
- New Install
- Now Supporting JMS 1.1
- New Architecture
- New APIs
- Error Handling
This presentation includes annotations with
additional complementary information. API
reference details are supplied in the notes for
each slide.
3New Install A Symbiotic Process
A component no longer a product
- OpenEdge10.1A Connections to Sonic 6.1
- SonicMQ 6.1 Client included on OpenEdge Media
- SonicMQ 6.1 Client Silent Install to OpenEdge
directory - Offline.bat or Offline.sh to install later
4Agenda
OpenEdge 10.1A Adapters for SonicMQ
- New Install
- Now Supporting JMS 1.1
- New Architecture
- New APIs
- Error Handling
5Prior to 10.1A
JMS 1.0
- Two different sessions
- Queue
- Topic
RUN jms/ptpsession.p.
RUN jms/pubsubsession.p.
6Example - Prior to 10.1A
Prior to 10.1A - Create a ptp session object
DEFINE VARIABLE ptpsession AS HANDLE
NO-UNDO. DEFINE VARIABLE hMsg AS HANDLE
NO-UNDO. DEFINE VARIABLE cText AS CHARACTER
INITIAL PTPsession ONLY" NO-UNDO. RUN
jms/ptpsession.p PERSISTENT SET ptpsession ("-H
OEServer -S 5162"). RUN setBrokerURL IN
ptpsession (tcp//MQBrokerHost2506). RUN
beginSession IN ptpsession. RUN sendToQueue IN
ptpsession ("SampleQ1", hMsg, ?, ?, ?). RUN
deleteSession IN ptpsession.
Point to Point Session
Sends to Queue
710.1A - Combination of PTP and Pub/Sub
JMS 1.1 Unified Domain Model
- New in 10.1A
- Parent containing all APIs
- All new code should use jmssession.p!!!
RUN jms/jmssession.p.
8Example - Unified Session in 10.1A
One session handle can send to queues AND publish
to topics
DEFINE VARIABLE hSession AS HANDLE
NO-UNDO. DEFINE VARIABLE hMsg AS HANDLE
NO-UNDO. DEFINE VARIABLE cText AS CHARACTER
INITIAL Unified JMSsession" NO-UNDO. RUN
jms/jmssession.p PERSISTENT SET hSession ("-H
myMachine -S 5162"). RUN setBrokerURL IN hSession
(tcp//2506"). RUN sendToQueue IN hSession
("SampleQ1", hMsg, ?, ?, ?). RUN publish IN
hSession ("Topic1", hMsg, ?, ?, ?). RUN
deleteMessage IN hMsg. RUN deleteSession IN
hSession.
9Demonstration Unified Session
Using Sonic JMS Test Client to view messages
SampleQ1
Topic1
10Agenda
OpenEdge 10.1A Adapters for SonicMQ
- New Install
- Now Supporting JMS 1.1
- New Architecture
- New APIs
- Error Handling
11Architecture
OpenEdge Adapter for SonicMQ
- Prior to 10.1A
- OpenEdge Adapter for SonicMQ
- OpenEdge 10.1A Connection Modes
- BrokerConnect
- ClientConnect
- ServerConnect
12Example - BrokerConnect
- Prior to 10.1A
- Separate processes
- OpenEdge Adapter
- Client
- Still available in 10.1A
RUN jms/jmssession.p PERSISTENT SET hSession
("-H OEServer -S 5162). RUN setBrokerURL IN
hSession(tcp//MQBrokerHost2506"). RUN
beginSession IN hSession .
13Example - ClientConnect
- SonicMQ ClientConnect
- Single Process - OpenEdge Adapter Client
- AdminServer NameServer no longer needed
RUN jms/jmssession.p PERSISTENT SET hSession
(-SMQConnect"). RUN setBrokerURL IN
hSession(tcp//MQBrokerHost2506"). RUN
beginSession IN hSession.
14Example - ServerConnect
15Logging
- ClientConnect logging disabled by default
- JavaTools.properties
- brkLogginglevel
- srvrLogginglevel
- ServerConnect
- Similar to 10.0A logging
- New page on AppServer and WebSpeed Agents
16Limitations of BrokerConnect
BrokerConnect cannot take advantage of certain
features
Feature BrokerConnect ClientConnect ServerConnect
Unified Domain Yes Yes Yes
Client Persistence No Yes Yes
Fault Tolerance No Yes Yes
Message Selectors Yes Yes Yes
Serialized Connection Objects No Yes Yes
TemporaryQueues and Topics Yes Yes Yes
17Agenda
OpenEdge 10.1A Adapters for SonicMQ
- New Install
- Now Supporting JMS 1.1
- New Architecture
- New APIs
- Error Handling
18New and Enhanced APIs
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
19Client Persistence
Available only with new connection modes
- Allows applications to continue to send/publish
messages when MQBroker connection is lost - Rechecking at set intervals
- Messages are sent from local store (directory)
when a connection is reestablished
20Steps to Use Client Persistence
- Create the session object
- Use new client persistence APIs
- Begin the session
- Send/receive messages
- If SonicMQ Broker unavailable, messages sent will
be persisted
211. Create Session Object
Standard StepsExcept
RUN jms/jmssession.p PERSISTENT SET hSession
("-SMQConnect"). RUN setBrokerURL IN hSession
("localhost2506"). RUN SETUSER IN hSession
("Administrator"). RUN setPassword IN
hSession("Administrator"). / Client Persistence
Requires a Client ID / RUN setClientID IN
hSession ("TestClientPersistence999").
Client Persistence Requires an ID
Type Name Parameters\Returns
Procedure setClientID INPUT clientID AS CHAR
222. Use New Client Persistence APIs
New APIs
- Set/Get
- Local Store Directory
- Local Store Size
- Reconnect Timeout
- Reconnect Interval
- Client Persistence
23Local Store Directory
- Directory to persist messages
Type Name Parameters\Returns
Procedure setLocalStoreDirectory INPUT localStoreDir AS CHAR
Function getLocalStoreDirectory RETURNS CHAR
- Default, current working directory
- C\OpenEdge\WRK
- Before beginSession
24Local Store Size
- Maximum File Size
- Default 10,000(KB)
- Before beginSession
-
Type Name Parameters\Returns
Procedure setLocalStoreSize INPUT storeSize AS INTEGER
Function getLocalStoreSize RETURNS INTEGER
25Reconnect Timeout
- How long will it keep trying to reconnect
- Default 0 Minutes No limit
- Before beginSession
Type Name Parameters\Returns
Procedure setReconnectTimeout INPUT timeout AS INTEGER
Function getReconnectTimeout RETURNS INTEGER
26Reconnect Interval
- Time between attempts
- Default 30 Seconds
- Before beginSession
Type Name Parameters\Returns
Procedure setReconnectInterval INPUT interval AS INTEGER
Function getReconnectInterval RETURNS INTEGER
QUESTIONWhat happens if you give up?
ANSWER Messages stay in local store.
ANSWER No, you can crack the local message open
just to look!
27Client Persistence
- Enable the client side property
- Default False
- Before beginSession
Type Name Parameters\Returns
Procedure setClientPersistence INPUT enabled AS LOGICAL
Function getClientPersistence RETURNS LOGICAL
28Create Rejected Message Consumer
- Handles all rejected message
- After beginSession
Name Parameters
createRejectedMessageConsumer INPUT procHandle AS HANDLE INPUT procName AS CHAR OUTPUT consumerHandle AS HANDLE
29Example - Using the New APIs
- / local store directory relative to cwd /
- RUN setLocalStoreDirectory IN hSession
("mqstore"). - RUN setLocalStoreSize IN hSession (50000).
- / Give up if broker down 10 hours /
- RUN setReconnectTimeout IN hSession (600).
- / Retry every minute /
- RUN setReconnectInterval IN hSession (60).
- / set Client Persistence /
- RUN setClientPersistence IN hSession (TRUE).
- / Note CreateRejectedMessageConsumer must be
done / - / AFTER BeginSession. You will see this later /
303. Example - Begin the Session
Standard Stepsplus calling new API
RUN beginSession IN hSession. /After
beginSession, createRejectedMessageConsumer/ RUN
createRejectedMessageConsumer IN hSession
(INPUT THIS-PROCEDURE, INPUT
"RejectedMsgHandler", OUTPUT HrejectedMsg).
31Demonstration4a. Send Messages
- Start
- SendToQueue Window
- Send This is the first Message
- Stop Container1
- Notice Client shows no signs of lost connection
- Send 4 more messages
- Restart Container1
- Persistent client will send to Queue by
collecting from mqstore
324b. Receive Messages
Seeing is believing
- Start JMS Test Client to receive all messages
33New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
34What is Fault Tolerance?
Defining backup broker to pickup if primary
broker fails
Domain
Replication Connection(s)
PrimaryBackupBroker
PrimaryBroker
PrimaryContainer
PrimaryBackupContainer
Requires CAA Licensing
35Using Fault Tolerant Client Connections
Available only with new connection modes
- SonicMQ Broker
- Must be licensed for Fault Tolerance
- Primary and Backup Broker must be configured and
tested - ABL Client can Set/Get
- Fault Tolerance
- Client Transaction Buffer Size
- Initial Connection Timeout
- Reconnect Timeout
36Fault Tolerant Client Connections
- Enable/Disable Fault Tolerance
- Before beginSession
- Default is FALSE
Type Name Parameters\Returns
Procedure setFaultTolerant INPUT enable AS LOGICAL
Function getFaultTolerant RETURNS LOGICAL
37Client Transaction Buffer Size
- Client Transaction Buffer Size
- Before beginSession
- Maximum buffer size for transactions
- Default 0 Bytes. If 0, it will use SonicMQ Broker
defined value instead
Type Name Parameters\Returns
Procedure setClientTransactionBufferSize INPUT CTBuffer AS INTEGER
Function getClientTransactionBufferSize RETURNS INTEGER
38Fault Tolerant Client Connections
- Initial Connection Timeout
- Before beginSession
- Time to wait for initial connection to broker
- Seconds, default 30
Type Name Parameters\Returns
Procedure setInitialConnectionTimeout INPUT FTInitTimeout AS INTEGER
Function getInitialConnectionTimeout RETURNS INTEGER
39Fault Tolerant Client Connections
- Reconnect Timeout
- Before beginSession
- Time to attempt to reconnect to broker
- Seconds, default 60
Type Name Parameters\Returns
Procedure setFaultTolerantReconnectTimeout INPUT PARAMETER FTReconnect AS INTEGER
Function getFaultTolerantReconnectTimeout RETURNS INTEGER
40Fault Tolerant Example
Available only with new connection modes
DEFINE VARIABLE hSession AS HANDLE. RUN
jms/jmssession.p PERSISTENT SET hSession
("-SMQConnect"). RUN setConnectionURLs IN
hSession ("Primary2508,BackupServer9876). RUN
setFaultTolerant IN hSession(TRUE). /
Default
values ClientTransactionBufferSize,0 bytes
defaults to Sonic InitialConnectionTimeout, 30
seconds FaultTolerantReconnectTimeout, 60 seconds
/ RUN beginSession IN hSession. RUN
createChangeStateConsumer IN hSession (THIS-PROCE
DURE, "msgHandler", OUTPUT msgH).
41Fault Tolerant Client Connections
- Verify Broker is licensed for Fault Tolerance
- After beginSession
- Default Disabled (FALSE)
- Notify Application of lost Broker connection
- After beginSession
- Optional, default is not to notify
Type Name Parameters\Returns
Function isFaultTolerant RETURNS LOGICAL
Type Name Parameters\Returns
Procedure createChangeStateConsumer INPUT procHandle AS HANDLE INPUT procName AS CHAR OUTPUT consumerHandle AS HANDLE
42Change State Consumer
PROCEDURE msgHandler DEFINE INPUT PARAMETER
hMessage AS HANDLE. DEFINE INPUT PARAMETER
hMsgConsumer AS HANDLE. DEFINE OUTPUT PARAMETER
hReply AS HANDLE. DEFINE VAR val AS CHAR
NO-UNDO. val DYNAMIC-FUNCTION ("getCharProper
ty" IN hMessage, "state"). / val is "active",
"reconnecting", "failed", or "closed" /
DISPLAY val. RUN deleteMessage IN
hMessage. END.
43New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
44Example - Serialized Connection Objects
Available only with new connection modes
- Define file that contains connection data
- You can replace
- With
Type Name Parameters
Procedure setConnectionFile INPUT filename AS CHARACTER
RUN setBrokerURL IN hSession ("localhost2506"). R
UN SETUSER IN hSession ("Administrator"). RUN
setPassword IN hSession("Administrator").
RUN setConnectionFile IN hSession
(connectionfilename).
45Created by Sonic Administrator
Stores All Default Connection Information
- Sonic Administrator completes
- Lookup Name
- Connection URL
- Default User Name
- Default Password
- Confirm Password
WARNING Always use machine names or IP
addresses. Localhost used here for generic demo
46New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
47XML Support
Additional APIs added to the XMLMessage Object
- Provides easier integration between SonicMQ and
OpenEdge - Create an XML message
- Use the X-DOCUMENT handle
- or
- Use the SAX-Writer
- Receive an XML Message
- Use the X-DOCUMENT handle
- or
- Use the SAX-Reader
48XML Support - DOM
Additional APIs added to the XMLMessage Object
- X-Document
- Copy XML document into XML message
- Copy XML message into XML document
Type Name Parameters
Procedure setX-Document INPUT HXMLFile AS HANDLE
Type Name Parameters
Function getX-Document RETURNS HANDLE
49Example - XML Support - DOM
Additional APIs added to the XMLMessage Object
RUN createXMLMessage IN hSession (OUTPUT
hMsg). CREATE x-document hXDOC. hXDOCLOAD("file",
myCustom.xml", false). RUN setX-Document IN
hMsg (hXDOC). RUN sendToQueue IN hSession
("SampleQ1", hMsg, ?, ?, ?). RUN deleteMessage
IN hMsg.
50XML Support Sending with a SAX-Writer
Additional APIs added to the XMLMessage Object
- SAX-Writer
- Create SAX-Writer handle
- Output destination internal longchar
- Example
Type Name Parameters\Returns
Function getSaxWriter INPUT Name CHAR RETURNS HANDLE
hSAXWriter DYNAMIC-FUNCTION ('getSaxWriter'U
IN hMsg, ?)
51XML Support Sending with a SAX-Writer
Additional APIs added to the XMLMessage Object
- SAX-Writer
- Delete SAX-Writer handle
- Example
Type Name Parameters\Returns
Procedure deleteSaxWriter INPUT swhandle AS HANDLE
RUN deleteSaxWriter IN hMsg (hSAXWriter).
52Checking Message Type
- Returns SonicMQ message type
Type Name Parameters\Returns
Function getMessageType RETURNS CHAR
- Now Includes
- DataSetMessage
- TempTableMessage
Message Type
53Example - XML Support Receiving with SAX-Reader
Additional APIs added to the XMLMessage Object
- Sax-Reader
- Input destination internal longchar
- Example
Type Name Parameters\Returns
Procedure setSaxReader INPUT hSaxReader AS HANDLE
CREATE SAX-READER hSAXReader. RUN setSaxReader IN
hMsg (hSAXReader). hSAXReaderSAX-PARSE(). DELETE
OBJECT hSAXReader.
54Example - Deleting Message
RUN deleteMessage IN hMsg. / Stop receiving
messages / RUN stopReceiveMessages IN hSession.
55New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
56Temp Table Messages
New APIs
- Allow applications to send and receive
- Temp-Tables as XML messages to SonicMQ
- SonicMQ Adapter
- Converts Temp-Tables to/from XML
- SonicMQ
- Handles as an XML message
57Create and Send a Temp-Table as an XML Message
- Create Temp-Table Message
- Send Temp-Table to XML Message
Type Name Parameters\Returns
Procedure createTempTableMessage OUTPUT HMessage AS HANDLE
Type Name Parameters\Returns
Procedure setTempTable INPUT hTable AS HANDLE INPUT SchemaLocation AS CHAR INPUT writeSchema AS LOGICAL
58Example - Create and Send a Temp-Table as an XML
Message
DEFINE VARIABLE HSession as HANDLE
NO-UNDO. DEFINE VARIABLE HMsg as HANDLE
NO-UNDO. DEFINE VARIABLE TempTable tcust LIKE
customers NO-UNDO. / create temp table
records .. / RUN createTempTableMessage in
HSession (OUTPUT HMsg). RUN setTempTable IN
HMsg (tcust, ?, TRUE). RUN sendToQueue IN
Hsession ("SampleQ1", HMsg, ?, ?, ?)..
59Receiving Temp Table Messages
- Read XML Message into Temp-Table
Type Name Parameters\Returns
Function getTempTable INPUT TTname AS CHAR INPUT SchemaLocation AS CHAR INPUT FieldTypeMap AS CHAR RETURNS HANDLE
60Example Receiving Temp Tables
DEFINE VARIABLE mtype AS CHAR NO-UNDO. mtype
DYNAMIC-FUNCTION ('getMessageType'u IN
hMsg). MESSAGE "MTYPE is " mType VIEW-AS
ALERT-BOX. IF mtype "TempTableMessage" THEN
DO MESSAGE A table message" VIEW-AS
ALERT-BOX. hTempttItem DYNAMIC-FUNCTION (
'getTempTable'u IN hMsg, ?, ?, ?).
httItemCOPY-TEMP-TABLE( hTempttItem ) . /
TempTable actions as needed /
OPEN-BROWSERS-IN-QUERY-FRAME-NAME
DELETE OBJECT hTempttItem. END.
61New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
62DataSet Messages
Send a ProDataSet as an XML Message to SonicMQ
- Allow applications to send and receive
ProDataSets as XML messages to SonicMQ - SonicMQ Adapter
- Converts ProDataSet to/from XML
- SonicMQ
- Handles as an XML message
63DataSet Messages
- Create DataSet Message
- Send ProDataSet to XML Message
Type Name Parameters\Returns
Procedure createDataSetMessage OUTPUT HMessage HANDLE
Type Name Parameters\Returns
Procedure setDataSet INPUT HDataSet AS HANDLE INPUT schemaLocation AS CHAR INPUT writeSchema AS LOGICAL
64Example - DataSet Messages
DEFINE VARIABLE HSession as HANDLE
NO-UNDO. DEFINE VARIABLE HMsg as HANDLE
NO-UNDO. DEFINE VARIABLE HDataSet AS HANDLE
NO-UNDO. / define DataSet etc etc.. / RUN
createDataSetMessage in HSession (OUTPUT HMsg).
RUN setDataSet IN HMsg (HDataSet, ?, TRUE). RUN
sendToQueue IN Hsession ("SampleQ1", HMsg, ?,
?, ?).
65DataSet Messages
Receive an XML Message into a ProDataSet from
SonicMQ
- Read XML message into ProDataSet
Type Name Parameters\Returns
Function getDataSet INPUT HDataSet INPUT schemaLocation INPUT fieldTypeMap RETURNS HANDLE
66Example - Receiving a ProDataSet
IF mtype "DatasetMessage" THEN DO RUN
PurgeDataset. / returns dynamic dataset /
hTempdsOrder DYNAMIC-FUNCTION ('getDataSet
'u IN hMsg, ?, ?, ?). / dumps the dynamic
one into static dsOrder /
hdsOrderCOPY-DATASET( hTempdsOrder ) . RUN
DisplayDataSetDetails. DELETE OBJECT
hTempDSOrder. END.
67Enhanced APIs
Existing APIs now support
- Temp-Table and DataSet messages
- Reset message to read-only
- Change Mode to write-only
- Delete Temp-Table or DataSet Message too
Type Name Parameters\Returns
Procedure reset N\A
Type Name Parameters\Returns
Procedure clearBody N\A
Type Name Parameters\Returns
Procedure deleteMessage N\A
68Demonstration
- Serialized Connection Object
- Enhanced XML support
- Temp Table messages
- DataSet messages
69New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
70Temporary Destinations
createTemporaryQueue createTemporaryTopic
- Allow applications to create temporary queues and
topics - Queue
- Topic
Type Name Parameters\Returns
Procedure createTemporaryQueue OUTPUT OPtempQname AS CHAR
Type Name Parameters\Returns
Procedure createTemporaryTopic OUTPUT OPtempTname AS CHAR
71Temporary Destinations
deleteTemporaryQueue deleteTemporaryTopic
- Delete when no longer needed
- Release resources
- Delete message consumer object
- Then delete temporary queue or topic
- Queue
- Topic
Type Name Parameters\Returns
Procedure deleteTemporaryQueue INPUT IPtempQname AS CHAR
Type Name Parameters\Returns
Procedure deleteTemporaryTopic INPUT IPtempTname AS CHAR
72Example - Temporary Queues and Topics
RUN createTemporaryQueue IN hSession (OUTPUT
cTempQueue). RUN createTemporaryTopic IN
hSession (OUTPUT cTempTopic). MESSAGE "The
temporary Queue is called " SKIP
cTempQueue SKIP "The temporary Topic is
called " SKIP cTempTopic VIEW-AS
ALERT-BOX. RUN sendToQueue IN hSession
(cTempQueue, hMsg, ?, ?, ?). RUN publish IN
hSession (cTempTopic, hMsg, ?, ?, ?). RUN
deleteTemporaryQueue IN hSession (OUTPUT
cTempQueue). RUN deleteTemporaryTopic IN
hSession (OUTPUT cTempTopic).
73New and Enhanced APIs By Concepts
- Client Message Persistence
- Fault Tolerant Client Connections
- Serialized Connection Objects
- Enhanced XML support
- Temp Table messages
- DataSet messages
- Temporary Destinations
- Server Based Message Selectors
74Server Based Message Selectors
New APIs - Available with all connection modes
- Messages filtered on defined criteria
- Prior to 10.1A
- Point-to-Point
- Message filter on SonicMQ Broker
- Publish/Subscribe
- Message filter on SonicMQ Client
- New in 10.1A
- Ability to move message filter to SonicMQ Broker
75Server Based Message Selectors
New APIs - Available with all connection modes
- Return current message filter setting
- Default False
- Using server based message selection
Type Name Parameters\Returns
Procedure setSelectorAtBroker INPUT enable AS LOGICAL
Function getSelectorAtBroker RETURNS LOGICAL
RUN setSelectorAtBroker IN HSession (TRUE).
76Agenda
OpenEdge 10.1A Adapters for SonicMQ
- New Install
- Now Supporting JMS 1.1
- New Architecture
- New APIs
- Error Handling
77Error Handling
- Types of Errors
- Deployment/Administration errors
- Runtime errors
- Client errors before request is made
- Client errors making request
- Server errors while processing request
- Available Debugging Tools
- SOAP Message Viewers (SOAP Faults)
- Log Files / Logging Levels
78Where to Look for Errors
- SOAP Fault response message
- Client can catch the exception and look at it
programmatically - Use SOAP Message Viewer
- Log Files
- JSE log file
- WSA log file .wsa.log
- AdminServer log file admserv.log
- AppServer log file .server.log, .ns.log
- SonicMQ ClientConnect log file cc.broker.log,
cc.server.log - SonicMQ ServerConnect log file sc.broker.log,
sc.server.log
79In Summary
- Adapters for SonicMQ are a component in every
OpenEdge install that you can use today - All connections support JMS 1.1
- New connections support new APIs
Broker
PRODUCER publish, send
Destination
JMS 1.1 Messages
CONSUMER subscribe, receive
80For More Information, go to
PSDN
- Codes samples available at
- http//psdn.progress.com
- Keyword
- Exchange
81For More Information, go to
Relevant SonicMQ Sessions
- Introductory
- SOA3 Getting the message, so you need to
integrate, but what do you need to know and do? - Architecture
- ARCH-7 Integrate this! SonicMQ and the OpenEdge
Reference Architecture - New in Sonic 7.0
- SOA4 Introducing Sonic SOA Suite v7.0
82For More Information, go to
Relevant XML Exchange Sessions
- XML
- DEV-11 Leveraging ProDataSets in an Open
Environment - DEV 15 XML in OpenEdge - Past, Present and
Future - INNOV-10 An Introduction to XQuery by Example
83Updated OpenEdge Documentation
- Getting Started
- Application Integration Services
- Installation Configuration Guides
- Core Services
- Development
- Programming for the OpenEdge Adapter for SonicMQ
with the 4GL-JMS API - Application Server
- Administration
84Hands On Training
http//www.progress.com/services/education/index.s
sp
85Questions?
86Thank you foryour time
87(No Transcript)