If you want to configure your TIBCO Web Messaging gateway, which normally lives in the DMZ, to connect to TIBCO EMS messaging backbone over a TCP connection, the procedure is straightforward. Just point to the TIBCO EMS server hostname and port number, assuming that's already open in the firewall, in the trusted network and that's it.
Something similar to the following service (stomp.jms) configuration should be enough:
<service>
<accept>ws://${gateway.hostname}:${gateway.nonsecure.port}/jms</accept>
<type>stomp.jms</type>
<properties>
<connection.factory.name>GenericConnectionFactory</connection.factory.name>
<context.lookup.topic.format>%s</context.lookup.topic.format>
<context.lookup.queue.format>%s</context.lookup.queue.format>
<env.java.naming.factory.initial>
com.tibco.tibjms.naming.TibjmsInitialContextFactory
</env.java.naming.factory.initial>
<env.java.naming.provider.url>
tcp://${EMS.hostname}:${EMS.portNumber}
</env.java.naming.provider.url>
<destination.strategy>session</destination.strategy>
</properties>
<realm-name>dev_realm</realm-name>
<authorization-constraint>
<require-role>AUTHORIZED</require-role>
</authorization-constraint>
</service>
Now, if you want to configure an end-to-end secured enabled environment then some extra parameters are necessary to make everything work correctly. The service configuration below will give you what you need (most of them are self-explanatory) to enable that.
<service>
<accept>wss://${gateway.hostname}:${gateway.secure.port}/jms</accept>
<type>stomp.jms</type>
<properties>
<connection.factory.name>SecureConnectionFactory</connection.factory.name>
<context.lookup.topic.format>%s</context.lookup.topic.format>
<context.lookup.queue.format>%s</context.lookup.queue.format>
<connection.security.principal>ems_user</connection.security.principal>
<connection.security.credentials>ems_password</connection.security.credentials>
<env.java.naming.factory.initial>
com.tibco.tibjms.naming.TibjmsInitialContextFactory
</env.java.naming.factory.initial>
<env.com.tibco.tibjms.naming.security_protocol>
ssl
</env.com.tibco.tibjms.naming.security_protocol>
<env.java.naming.provider.url>
ssl://${EMS.hostname}:${EMS.securePortNumber}
</env.java.naming.provider.url>
<env.com.tibco.tibjms.naming.ssl_enable_verify_host>
true
</env.com.tibco.tibjms.naming.ssl_enable_verify_host>
<env.com.tibco.tibjms.naming.ssl_trusted_certs>
ems_certificate.pem
</env.com.tibco.tibjms.naming.ssl_trusted_certs>
<env.com.tibco.tibjms.naming.ssl_trace>
true
</env.com.tibco.tibjms.naming.ssl_trace>
<destination.strategy>session</destination.strategy>
</properties>
<realm-name>dev_realm</realm-name>
<authorization-constraint>
<require-role>AUTHORIZED</require-role>
</authorization-constraint>
</service>
The current version of TIBCO Web Messaging also provides you a really nice feature called Reverse Connectivity where you will be able to close all incoming traffic ports while still allowing external clients to initiate the connection. But, this is a topic to be explored on a next post. Stay tuned!
Thursday, January 17, 2013
Thursday, January 3, 2013
Searching for the same thing over and over again...
I have to admit that I very often run queries on Google for things I've searched before and many times I end up with the exact same results. I'm also a big fan of Evernote where I keep my notes organized per project, topic, event, place, etc...
Luckily, the Evernote Web Clipper has a feature that seems to solves the issue above allowing you to simultaneously search on Google and also on your Evernote notes.
To enable that capability all you have to do is to right-click in the Web Clipper and then make sure you have the Related Results checkbox enabled. I believe this is available only in Google Chrome and Apple Safari for now.
On your next Google search, you should be able to see results similar to the following picture (with the Evernote results boxed in to the right).
Luckily, the Evernote Web Clipper has a feature that seems to solves the issue above allowing you to simultaneously search on Google and also on your Evernote notes.
To enable that capability all you have to do is to right-click in the Web Clipper and then make sure you have the Related Results checkbox enabled. I believe this is available only in Google Chrome and Apple Safari for now.
| Evernote Web Clipper Related Results to add simultaneous search capabilities with Google |
On your next Google search, you should be able to see results similar to the following picture (with the Evernote results boxed in to the right).
Wednesday, January 2, 2013
Do Not Disturb!
To all of my friends out there with their powerful iOS 6 devices, you may haven't noticed yet but if you use the Do Not Disturb feature it will stay on after scheduled time and that's caused by a bug reported here: http://support.apple.com/kb/TS4510 and it will stay on until Jan, 07th 2013 causing your device to do not alert, notify, ring, etc (depending on your setup) until you turn DND off manually.
Remote Debugging Mobile Web Apps
Just found this little tool called jsconsole that's a tremendous help with remote debugging mobile web applications.
All you have to do is to navigate to jsconsole.com and type :listen in the top command prompt and insert the <script> tag generated back to you on your web application after the connection has been established.
Then, after loading the application on your mobile device you should be able to see all the JavaScript output.
All you have to do is to navigate to jsconsole.com and type :listen in the top command prompt and insert the <script> tag generated back to you on your web application after the connection has been established.
Then, after loading the application on your mobile device you should be able to see all the JavaScript output.
Friday, December 28, 2012
Removing Click Delays on Mobile Browsers
If you ever wanted to get rid of the 300ms delay between a physical tap and the the firing of a click event introduced on mobile browsers then the polyfill those guys from Financial Times created is the answer you are looking for.
Available on GitHub, FastClick is a simple, easy-to-use library for eliminating that delay and make your application feel more responsive to, for example, the touch of a button.
Have a look and fork the project at: https://github.com/ftlabs/fastclick
You can also give it a try running one of the demos on your mobile device pointing your browser to: http://ftlabs.github.com/fastclick/examples/layer.html (it won't work on your desktop browser as the library doesn't attach any listeners to them).
Fascinating and job well done...
Available on GitHub, FastClick is a simple, easy-to-use library for eliminating that delay and make your application feel more responsive to, for example, the touch of a button.
Have a look and fork the project at: https://github.com/ftlabs/fastclick
You can also give it a try running one of the demos on your mobile device pointing your browser to: http://ftlabs.github.com/fastclick/examples/layer.html (it won't work on your desktop browser as the library doesn't attach any listeners to them).
Fascinating and job well done...
Monday, November 12, 2012
Running iOS Simulator from Command Line
I've recently migrated to Mountain Lion and it looks like I couldn't start the iOS Simulator from command line as I used to do in Snow Leopard.
Luckily, I was able to find a solution and all development is back to normal now :)
Here is how to run the iOS Simulator from command line:
and that assumes that you have installed Xcode under /Applications.
You can also create a script with the content above and update your $PATH variable or even create a symbolic link under your /Applications folder using the following:
Luckily, I was able to find a solution and all development is back to normal now :)
Here is how to run the iOS Simulator from command line:
$ open /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app
and that assumes that you have installed Xcode under /Applications.
You can also create a script with the content above and update your $PATH variable or even create a symbolic link under your /Applications folder using the following:
$ ln -s /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app/ /Applications/
Monday, September 24, 2012
Time for another change...
Well, it's time for another career change... I've decided to take a slightly different direction and join TIBCO as Principal Consultant where I'm going to be involved with lots of architecture discussions, application design white boarding, development and deployment techniques, pre and post sales activities as well.
My story with TIBCO started a long time ago when I was primarily competing against the company on every single account I was working on. It definitely showed me how good the TIBCO technology is and how hard was to compete against a company that innovates a lot and definitely understands what customer are looking for.
Then moving over to a couple of smaller companies I could experience the partnership side from the EMS, Spotfire and Web Messaging perspectives which gave me a good way to start contributing from the first moment.
If you think about how the opportunities that have emerged from information silos to integration silos and consequently moving over to the new trends of mobile, social, cloud and other big things, TIBCO is definitely the company with the right technology to give you the right information at the right time and on the right hands to make a decision and give you the ability to compete on such tough markets these days.
And keep mind that having all the information related to a particular event six month after the fact is not more valuable that having a little bit of the right information just before it happens.
It can't be a more exciting time to join a company like TIBCO and I'm pretty sure the ride is going to be fun from Day 1.
Back to work...
My story with TIBCO started a long time ago when I was primarily competing against the company on every single account I was working on. It definitely showed me how good the TIBCO technology is and how hard was to compete against a company that innovates a lot and definitely understands what customer are looking for.
Then moving over to a couple of smaller companies I could experience the partnership side from the EMS, Spotfire and Web Messaging perspectives which gave me a good way to start contributing from the first moment.
If you think about how the opportunities that have emerged from information silos to integration silos and consequently moving over to the new trends of mobile, social, cloud and other big things, TIBCO is definitely the company with the right technology to give you the right information at the right time and on the right hands to make a decision and give you the ability to compete on such tough markets these days.
And keep mind that having all the information related to a particular event six month after the fact is not more valuable that having a little bit of the right information just before it happens.
It can't be a more exciting time to join a company like TIBCO and I'm pretty sure the ride is going to be fun from Day 1.
Back to work...
Subscribe to:
Posts (Atom)
Setting Up Local Environment for Developing Oracle Intelligent Bots Custom Components
Oh the joy of having a local development environment is priceless. For most cloud based solutions the story repeats itself being hard to tr...
-
There are some use cases and business scenarios where you have to process messages in order. Basically, when multiple consumers receive mes...
-
Apache ActiveMQ / FUSE Message Broker has a feature called Virtual Destinations that are logical destinations (queues or topics) mapped t...
-
For several times I wondered what was the exact time my machine booted, woke up or slept. So, I did a little investigation to find out tha...
