We went ahead and approved this case at LSARC today, and I've taken the liberty of closing the case as approved.
Tom Childers Sr. Staff Engineer Sun Microsystems, Inc. SOA/Business Integration Engineering Phone x31943/+1 415-226-3398 Mobile +1 415-272-3565 Fax +1 415-226-3398 Email Tom.Childers at Sun.COM On Oct 29, 2008, at 12:29 PM, Tom Childers wrote: > Hi, Linda. > > The external link is > http://www.opensolaris.org/os/community/arc/caselog/2008/648/ > , and when I look at the onepager there, it refers to an internal > machine. For some reason, the materials don't show up, so we perhaps > have a permissions problem. > > The links in the files should be made into relative links, so we > don't have internal Sun machine names visible. > > I'm happy with your comments on the FOSS issue, and I have no > problem closing this case as approved. > -tdc > > > On Oct 28, 2008, at 10:37 AM, Linda Schneider wrote: > >> >> Looking through this case today, I notice that the UMS >> specification is hosted on an internal machine, and the onepager >> links to an internal machine. Since this is an open case, the specs >> are not available to outside ARC members. >> >> A copy of the specification is attached in the zip file I attached >> to the original fast track email and the data is in the case >> directory. Is there also another place I should place it. >> >> Isn't there a public or FOSS interface available to support .net, >> Python and Ajax clients? >> >> For JMS, not really. In general each JMS provider comes up with >> their own api's for .net, etc. >> >> There is a general api called STOMP which can be a bridge into >> JMS. and we have provided an example of using it on the openMQ >> site, but the licensing on the product prevent us from putting it >> in the product. Additionally its a more complex api. >> >> To login to the service to send a message with Stomp: >> Console.WriteLine("CONNECT ..."); >> streamWriter.WriteLine("CONNECT"); >> streamWriter.WriteLine("login:guest"); >> streamWriter.WriteLine("passcode:guest"); >> streamWriter.WriteLine(""); >> streamWriter.Write('\0'); >> streamWriter.Flush(); >> >> To long into the server to send a message with UMS: >> POST /ums/simple? >> service=login&user=guest&password=guest HTTP/1.1 >> >> NOTE: Ums (although part of the openMQ/SJSMQ project) is generic >> and will actually work with other providers. >> >> >> >> Tom Childers wrote: >>> >>> Hi, Linda. >>> >>> Looking through this case today, I notice that the UMS >>> specification is hosted on an internal machine, and the onepager >>> links to an internal machine. Since this is an open case, the >>> specs are not available to outside ARC members. >>> >>> Apparently this is a new interface that we created from scratch. >>> Isn't there a public or FOSS interface available to support .net, >>> Python and Ajax clients? >>> >>> Everything else looks pretty straightforward. >>> -tdc >>> >>> On Oct 22, 2008, at 9:06 PM, Linda Schneider wrote: >>> >>>> I'm sponsoring the following proposal for fast-track approval. >>>> The timer is set for 10/28/2008. >>>> >>>> Proposed release binding is minor. >>>> >>>> Fastrack content is [now] included below (it will look better if >>>> viewed as html) >>>> >>>> The attached zip file [additional.zip] contains copies of the >>>> functional specs referenced in this document. >>>> The document (and related files) is also available at: >>>> http://sac.sfbay/arc/LSARC/2008/648/robin.html >>>> >>>> FastTrack: OpenMQ / Sun Java System Message Queue 4.3 (Robin) >>>> Sponsor: Linda Schneider >>>> >>>> Release Binding: Minor >>>> >>>> This is a FastTrack request for minor interface changes in Open >>>> Message Queue (OpenMQ) / Java System Message Queue 4.3 (Robin). >>>> Robin is a maintenance release to Message Queue 4.2 (LSARC/ >>>> 2008/387). It includes bug fixes and a small number of minor >>>> enhancements. >>>> >>>> This FastTrack adds modifies several committed and uncommitted >>>> exported interfaces and adds two new imported interfaces. It does >>>> not change the classification or remove any existing interface. >>>> >>>> >>>> >>>> Overview of Changes >>>> >>>> Several changes were added to 4.3 which impact the product's >>>> interface: >>>> >>>> A REST style API was added to allow messages to be produced or >>>> consumed to the MQ provider >>>> A new bundling and layout scheme was added to support the product >>>> installed by our new Zip based installer (which will also be used >>>> in future releases for IPS packages) >>>> Minor administration changes >>>> Minor modifications to the windows installer >>>> Addition of a command to make it easier to locate the uninstaller >>>> on the OpenMQ packages. >>>> Public interface changes >>>> >>>> New Exported Interfaces: Creation of the Universal Message >>>> Service (UMS) API: >>>> The UMS Protocol used by applications to connect to the service. >>>> The UMS Configuration which contains the set of configuration >>>> parameters for the service. >>>> A new war file (imqums.war) containing the servlet required by UMS. >>>> New Exported Interface: Creation of a the new filesystem layout >>>> for use by the new packages. This layout will also be used for >>>> our new install bundles specifically: >>>> Our OpenMQ product >>>> Our AIX product (the platform is new to 4.3) >>>> No changes have been made to our existing packages used in >>>> earlier releases. (They will still use the old filesystem laytout) >>>> New Exported Interface: A new uninstall bat/shell script has been >>>> added as a shortcut for uninstalling the openMQ-only release. >>>> Modified Exported Interface: Minor changes have been made to JMX >>>> to add additional information for destinations and consumers. >>>> New Imported Interfaces: Installation of the product on windows >>>> (both for SJSMQ and OpenMQ) now uses Java registry keys as a >>>> fallback to locate a JRE to use to start the installer. >>>> Private interface changess >>>> >>>> Additional changes have been made to private interfaces: >>>> >>>> Modified Interface: Output of imqcmd. This interface is >>>> Uncommitted. >>>> >>>> >>>> Descriptions of Changes >>>> >>>> >>>> Universal Message Service (UMS) - a REST style API >>>> The Universal Message Service is a simple REST based API that >>>> allows any HTTP capable device to access Message Queue. This >>>> allows clients written in languages such as c-sharp and phython >>>> to send and receive messages. >>>> >>>> A new web component (imqums.war) can be deployed on any web >>>> container. That component serves as a bridge between the ums >>>> client and the JMS provider. The ums client sends the ums >>>> protocol (which uses http posts) to connect to the imqums >>>> service. That service uses standard JMS apis to connect to the MQ >>>> server (the broker). >>>> >>>> <ums.gif> >>>> >>>> Client->web component protocol >>>> The protocol has two types of messages service requests (messages >>>> sent to the messaging system) and service responses (responses >>>> received from the messaging system). There are also two services >>>> (XML and basic text) which are provided in this release. >>>> >>>> >>>> The API supports the following commands: >>>> >>>> login logs into the system and creates a UMS session (note: the >>>> password must be sent in plaintext since it is going as part of >>>> the http command line, however use of SSL is recommended). >>>> send Sends a message (which will become a JMS message) to MQ. >>>> receive Receive a message from MQ. >>>> commit Commit a transaction (provided the UMS session is >>>> transacted). >>>> rollback Rollback a transaction. (provided the UMS session is >>>> transacted). >>>> close Close the UMS session. >>>> All messages are request/response: >>>> >>>> Service Requests >>>> The http POST method is used for all interaction with the UMS. >>>> Each protocol message is represented with the following syntax: >>>> http://host:port/<ums-context-root>/<service>[? >>>> <query_string_if_simple>]; >>>> >>>> Where: >>>> >>>> ums_conext-root: the location where the WAR file was deployed >>>> simple: the type of service used (simple or XML) >>>> query_string: used for the simple service. Provides a set of name >>>> value pairs separated by & which specify information such as the >>>> service type, messaging domain, and destination name >>>> For the Messages: >>>> For XML messages, the body contains the command information in >>>> XML format >>>> For the simple service, the body is empty (since the protocol >>>> information in in the URL) >>>> >>>> Service Responses >>>> For the XML service, the body of the HTTP request returns a SOAP >>>> message containing return information. For the simple message >>>> service, the body of the message may contain some specific return >>>> information. >>>> >>>> Lower level details of the Protocol are found in the UMS Protocol >>>> description. >>>> >>>> UMS configuration >>>> When the war file is deployed, several configuration options are >>>> available for the servlet including password to be used to the >>>> broker, how often to poll for messages and the broker address. >>>> Specific configuration parameters are found in the UMS >>>> Configuration specification. >>>> >>>> Filesystem layout and packaging change - support for new packages >>>> which can handle multi-install >>>> In MQ 4.3 we are adding a new zip based packaging bundle. In the >>>> following release (Crane), we will be replacing the zip bundles >>>> for IPS packages. This layout is the one we will be using for >>>> going forward for all future unbundled products (either zip based >>>> or IPS). >>>> >>>> Note: Our current SVR4 or Linux RPM based packaging is unaffected >>>> by these changes. >>>> >>>> MQ's filesystem will be laid out following the JES Filesystem >>>> Layout for Unbundled Software. >>>> >>>> <install_home> >>>> | >>>> |-------- etc >>>> | | >>>> | |-mq [MQ etc files] >>>> | >>>> |-------- var >>>> | | >>>> | |- install [contains installer information] >>>> | | >>>> | |-mq [used by the server for storing data] >>>> | >>>> |-------- mq >>>> | |-------- bin [MQ executables] >>>> | | | >>>> | | |- sparcv9 (amd64) [64 bit solaris >>>> executables] >>>> | | >>>> | |-------- lib [MQ jar files and libraries] >>>> | | | >>>> | | |- sparcv9 (amd64) [64 bit libraries for >>>> the MQ C API] >>>> | | >>>> | |-------- include [C-API file system headers] >>>> | | >>>> | |-------- lib64 [note: linux libs used instead of >>>> sparcv9] >>>> | | >>>> | |-------- examples [demos] >>>> | >>>> |-------- install >>>> | >>>> |- open installer implementation and jar files >>>> >>>> >>>> For more details and specific locations for each file installed >>>> by MQ see the MQ 4.3 Filesystem and Packaging specification. >>>> >>>> >>>> mquninstall[.bat] - script to improve uninstall experience >>>> The installer places the script to uninstall the product in: >>>> <install_home>/var/install/contents/mq/uninstaller >>>> >>>> A low level install script (used by the mq installer) is located >>>> at: >>>> <install_home>/install/bin/uninstaller >>>> >>>> While we do document the location of the uninstaller, it is >>>> difficult to find and users often attempt to uninstall with the >>>> wrong uninstaller executable. >>>> >>>> For this release, we are adding a new script (or bat file) called >>>> mquninstall that is being placed in the <install_home>/mq/bin >>>> directory. This will will only be in OpenMQ bundles for this >>>> release (it will not be available in package based installs). >>>> >>>> >>>> JMX Administration API changes - minimal JMX attribute and >>>> CompositeData changes >>>> The following changes will be made to the JMX monitoring api: >>>> >>>> A new attribute NextMessageID will be added to consumers and >>>> destinations >>>> A new attribute NumMsgsPending to consumers >>>> The specific changes are: >>>> >>>> DestinationMonitorMBean >>>> New Attributes: >>>> Name Set/Get Type Description >>>> NextMessageID G String JMS Message Id of the next message to >>>> be >>>> sent to any consumer >>>> ConsumerMonitorMBean: >>>> new Keys for Composite Data >>>> Key Value Type Description >>>> NextMessageID String JMS Message Id of the next message to be >>>> sent to this consumer >>>> NumMsgsPending Long The number of messages which have been sent >>>> to this consumer but have not been acknowledged. They may either >>>> be queued for delivery or delivered to the consumer >>>> >>>> >>>> Administration API (imqcmd) output changes - imqcmd output >>>> changes for durable subscribers >>>> Note: the output returned from this application has a >>>> classification of uncommitted. >>>> >>>> This changes the output of the command imqcmd list dur to list >>>> all destinations (and include a directory name) if the -d is >>>> omitted. The following examples show the ouptut changes: >>>> >>>> Output when listing durables when a destination passed in on the >>>> command line. (Unchanged from previous releases) >>>> imqcmd list dur -d mydest >>>> >>>> >>>> Listing all durable subscriptions on the topic 'mydest' >>>> on the broker specified by: >>>> >>>> ------------------------- >>>> Host Primary Port >>>> ------------------------- >>>> localhost 7676 >>>> >>>> --------------------------------------------------------------------------- >>>> Durable Sub. Name Client ID Number of Messages Durable Sub. >>>> State - >>>> --------------------------------------------------------------------------- >>>> mydn mycid 0 >>>> INACTIVE - >>>> >>>> Successfully listed durable subscriptions. >>>> >>>> Output when listing durables when a destination is not provided >>>> on the command line (adds new column DestinationName) >>>> imqcmd list dur -- listing all destinations >>>> >>>> >>>> Listing all durable subscriptions >>>> ------------------------- >>>> Host Primary Port >>>> ------------------------- >>>> localhost 7676 >>>> >>>> ------------------------------------------------------------------------------------------ >>>> Durable Sub. Name Client ID Destination Name Number of >>>> Messages Durable Sub. State >>>> ------------------------------------------------------------------------------------------ >>>> 456 123 *.foo >>>> 0 INACTIVE >>>> mydn mycid mydest >>>> 0 INACTIVE >>>> >>>> Successfully listed durable subscriptions. >>>> >>>> Additional Installation Imported interfaces >>>> The windows Installer.vbs script now uses the following variables >>>> to locate a JRE for the installer: >>>> >>>> >>>> HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion >>>> HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\<version>\JavaHome >>>> >>>> During installation, the installer will first attempt to use the >>>> jdk (if any) which was passed into the installation script, if no >>>> jdk is passed in it will look for a jre installed as part of the >>>> bundle, if no jre is found it will look at the keys to find the >>>> current JDK and its javahome. >>>> >>>> Additional Logging Messages >>>> Some bug fixes require the addition or modification of log >>>> messages. No change was made in the format of those messages. >>>> >>>> >>>> Imported/Exported Intefaces >>>> >>>> Exported Interfaces >>>> Interface Classification Comments >>>> imqcmd Ouput Uncommitted Modifies an existing interface to >>>> support listing of all durables including their destination. See >>>> specific changes above. >>>> MQ MBean Attributes names Committed Modifies an existing >>>> interface to add support for NextMessageID method. See specific >>>> changes above >>>> MQ MBean Lookup keys for CompositeData Committed Modifies an >>>> existing interface to add support for NextMessageID method and >>>> NumMsgsPending. See specific changes above. >>>> Unbundled Filesystem Layout Committed New Interface. >>>> Creates a new filesystem layout for the product when it is not >>>> shipped with native packaging. See the Filesystem Layout >>>> specification >>>> >>>> Broker Log Infomation Uncommitted Modified an existing interface >>>> >>>> by adding new log messages (no format changes) >>>> UMS Protocol Committed New Interface. >>>> Defines the protocol for the new ums service.See the UMS Protocol >>>> Specification >>>> >>>> UMS Configuration Committed New Interface. >>>> Defines the configuration properties for the new ums service. See >>>> the UMS Configuration Specification >>>> >>>> imqums.war Committed New Interface. >>>> Defines the name of the war file used for deploying the new ums >>>> service. See specific changes above. >>>> >>>> <mq_home>/bin/mqunistall[.bat] Committed New Interface. >>>> A new script file which is available only on the new openMQ >>>> bundles that makes it easier for users to find the uninstaller. >>>> See specific changes above. >>>> >>>> >>>> Imported Interfaces >>>> Interface Classification Comments >>>> HKLM\SOFTWARE\Java Soft\Java Runtime Environment\CurrentVersion >>>> Standard New Interface >>>> Location of the latest release of the JRE on a windows system. >>>> >>>> HKLM\SOFTWARE\Java Soft\Java Runtime Environment\<version> >>>> \JavaHome Standard New Interface >>>> Location of the java home for a release of the JRE on a windows >>>> system. >>>> >>>> >>>> >>>> >>>> References >>>> >>>> Current Release: >>>> >>>> Message Queue 4.3 feature functional specifications: >>>> >>>> UMS protocol >>>> UMS configuration specification >>>> MQ Filesystem Layout and packaging specification for Robin >>>> >>>> Previous Release: >>>> >>>> Message Queue 4.2 (Harrier) LSARC case: >>>> http://sac.sfbay.sun.com/arc/LSARC/2008/387 >>>> >>>> >>>> >>>> <additional.zip> >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/opensolaris-arc/attachments/20081104/bc949b0c/attachment.html>