Posts Tagged ‘Progress Sonic’
Headers vs. Properties in ESBs
Headers are commonly used for service-level information (e.g. HTTP or JMS headers copied from incoming messages) and properties, for message-level information (e.g. data saved from previous messages in the itinerary) that could be instead added to messages.
While Progress Sonic ESB stores them together in XQ messages, both FUSE ESB and JBossESB store headers and properties apart.
SOAP Fault Handling in Java, .NET and Progress OpenEdge
Java
import javax.xml.soap.SOAPElement;
import javax.xml.ws.soap.SOAPFaultException;
public final class SOAPSample {
public static void main(final String[] args) {
try {
...
} catch (final SOAPFaultException e) {
final SOAPElement detail = (SOAPElement) e.getFault().getDetail().getElementsByTagNameNS("urn:soap-fault:details", "FaultDetail").item(0); // replace by the actual detail, if any, this is for the Progress OpenEdge Adapter for Sonic ESB
final SOAPElement msg = (SOAPElement) detail.getElementsByTagName("errorMessage").item(0);
throw new Exception(msg.getValue(), e));
}
}
}
.NET
using System.Web.Services.Protocols.SoapException;
public sealed class SOAPSample {
public static void main(const String[] args) {
try {
...
} catch (const SoapException Ex) {
throw new Exception(Ex.Detail["FaultDetail", "urn:soap-fault:details"]["errorMessage"].InnerText); // replace by the actual detail, if any, this is for the Progress OpenEdge Adapter for Sonic ESB
}
}
}
Progress OpenEdge w/o Detail
... IF VALID-HANDLE(ERROR-STATUS:ERROR-OBJECT-DETAIL) THEN DO: RETURN ERROR ERROR-STATUS:ERROR-OBJECT-DETAIL:SOAP-FAULT-STRING. END.
Progress OpenEdge w/ Detail
DEF VAR hFault AS HANDLE. DEF VAR hDetail AS HANDLE. DEF VAR hMsg AS HANDLE. CREATE X-NODEREF hFault. CREATE X-NODEREF hDetail. CREATE X-NODEREF hMsg. ... ERROR-STATUS:ERROR-OBJECT-DETAIL:SOAP-FAULT-DETAIL:GET-NODE(hFault). IF VALID-HANDLE(hFault) THEN DO: hFault:GET-CHILD(hDetail, 1). hDetail:GET-CHILD(hMsg, 1). RETURN ERROR hMsg:NODE-VALUE. END.
Cheat Sheet for the Oracle JDBC Thin Driver
Class: oracle.jdbc.driver.OracleDriver
URL Format: jdbc:oracle:thin:@[host][:port][:sid], an Oracle Net keyword-value pair or a TNSNAMES entry.
http://www.oracle.com/technology/tech/java/sqlj_jdbc/index.html
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html (for Java 5-, like in Progress Sonic ESB 7.7-)
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_111060.html (for Java 5+)
Cheat Sheet for the Microsoft SQL Server JDBC Driver
Class: com.microsoft.sqlserver.jdbc.SQLServerDriver
URL Format: jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]] (ex.: jdbc:sqlserver://localhost;databaseName=Database1)
http://msdn.microsoft.com/en-us/data/aa937724.aspx
http://www.microsoft.com/downloads/details.aspx?FamilyId=C47053EB-3B64-4794-950D-81E1EC91C1BA&displaylang=en (for Java 5-, like in Progress Sonic ESB 7.7-)
http://www.microsoft.com/downloads/details.aspx?FamilyID=99b21b65-e98f-4a61-b811-19912601fdc9&displaylang=en (for Java 5+)
Undocumented Configuration of the Progress OpenEdge Adapter for Sonic
com.progress.openedge.homecan be replaced bycom.sonicsw.xq.home.com.progress.openedge.logLevelcan be used to configure the log level (1-5).
Progress Sonic Workbench 7.6 Update Site is Down
If you can do so, please report to Progress that http://updates.progress.com/sonic/7.6.0 isn’t working, and leave the ticket # here.
Progress Sonic Supported Platforms
DataDirect Technologies Breaks SOA Price Barrier for Mainframes by Eliminating Costs for Web Services Processing
With the DataDirect Shadow product’s patent-pending design, processing associated with SOA integration and data queries can be diverted from the mainframe’s General Purpose Processor (GPP) to be handled by the zIIP specialty engine – which does the work without using any of the mainframe licensed MIPs capacity.
Wouldn’t it be great if Progress Sonic ESB and DataDirect Shadow z/Services were integrated? There could also be service types for DataDirect XQuery and DataDirect XML Converters.
It ain’t really bad news for ESBs that web services can be created downstream, there is plenty to do in the middle.
Progress Apama(R) CEP and Sonic(R) ESB to Automate and Improve Real-Time Shipping Scheduling for Royal Dirkzwager
The Progress Apama® Complex Event Processing (CEP) platform will monitor the information feeds from the Sonic ESB seamlessly in real-time and detect spatial and time-based event patterns that may be of importance to customers.
You don’t see Apama being used outside the financial industry often enough.
Good luck with the project.
http://newsroom.progress.com/phoenix.zhtml?c=86919&p=RssLanding&cat=news&id=1271262
Wrong Log Level in Progress OpenEdge Adapter for Sonic 10.1A
The log level of an initialization message needs to fixed:
[09/02/26 15:48:22] ID=EB01 (severe) [----------------] Inicializando WSA adapter , versão 10.1A, ID 7cfe62fa2cc628d3:21d86c2b:11fb3ea0872:-7ff9 (10620)
Reported to Progress in # W903110137.
Thanks to Igor for the help.