Lee Burch, one of our extremely talented architects, gave me a writeup on “Using WPS style Resource Environment Providers with Spring” He wanted to know where to post something like this and of course, my first thought is this blog. His justification for posting this is that while it’s a common use case in the WebSphere Portal world, many developers get it wrong. So thanks to Lee for the post.
Generally a problem most projects face is how to handle configuration information that varies between environments. Many times you can handle this by using one of WAS built in resources such as a SMTP server or a JDBC connection pool. However many times the configuration data won’t fit one of these existing WAS resource types, such as an e-mail address, a server name or a URL. To solve this a lot of approaches are available some use build tools such as Maven to build different EAR files, others use properties files located outside of the EAR. Unfortunately both of these solutions have their issues and can be difficult to manage.
To solve this problem WAS provides and WPS leverages the resource environment providers. These allow you to specify your settings as a part of the WAS console at the Cell, Node or Server level. This provides an easy way to maintain values across many servers while also doing away with the need to have special EARs built for each environment.
Unfortunately it requires deployment to the App Server lib/ext directory, something that is not always so easily done particularly in a shared enterprise environment.
However WPS uses Resource Environment Providers but does so differently than the above article specifies, it uses the “Custom Properties” of the resource environment provider and requires no deployment to the App Server, an ideal solution.
While it is possible to bind your code directly to the fetches to the Resource Environment Provider I find a more flexible and much more modern way of addressing the problem is to use Spring and its facility for PropertyPlaceholderConfigurer.
This allows for a Spring config something like this
This will lookup the custom property “administratorsEmailAddress” under the Resource Environment Provider named “NameOfMyResourceEnvironmentProvider” and do the substitution before initializing the context. Of course it also follows the standard WAS rules allowing for the Node to trump the Cell setting and the Server to trump the Node and Cell settings allowing a lot of flexibility in how the property gets propagated to your configuration.
The code for the WebSphereResourceEnvironmentProviderPlaceHolderConfigurer follows
Anemic IT Growth or Budgeting Shift?
Mon, Nov 17th 2014 3:18p Michael Porter ZDNet reports on a recent Gartner report of 2015 IT budgets. They call it, “IT Spending for 2015 Anemic amid Digital Shift.” Here’s the breakdown on who creates vs who approves the IT budget.
I don’t interpret it quite this way. Yes, IT budget growth is anemic but there’s on telling piece of information in the ZDnet article
The upshot: Spending on digital innovation will be funded outside of the IT budget.
So yes, spending is anemic within [read] Keywords:
Digital Transformation is All Around Us…Again.
Tue, Nov 11th 2014 8:19a Mark Polly The phrase “Digital Transformation” has re-emerged as a new phenomenon. Google tells me there are 49 million (49,000,000) search results for the words Digital Transformation.
First, why do I say it is a phenomenon? It seems that many of our leading think-tanks are talking about digital transformation. Here are some examples:
Earlier this year, MIT Sloan Management Review posted this article: The Nine Elements of Digital Transformation
Forrester is predicting that in 2015 [read] Keywords: collaboration
Drug or Drug Device Portals
Thu, Oct 23rd 2014 10:12a Michael Porter Eugene Sefanov has a nice post on the value of a patient portal for those who use a specialty drug or drug device. He goes into some detail on the possible use cases with that kind of portal. I like the approach he takes. Just being prescribed a drug doesn’t mean you are going to get the right outcome. Anything you can do to ensure the patient has all the support he or she needs will improve that outcome.
An effective way to provide patient support is through a portal that is sp [read] Keywords: collaboration
Dreamforce: Community Cloud for Healthcare
Tue, Oct 14th 2014 10:15p Mark Polly All this week I’m at Dreamforce, the annual Salesforce conference. Salesforce has come a long way with their platform and they’ve recently introduced Community Cloud. Community Cloud is an evolution of their portal product and includes many features that we see in other enterprise-class, horizontal portals.
We are seeing a lot of interest in portals from our healthcare clients. At Dreamforce, I attended a session on using Salesforce Community Cloud in healthcare. I blogged [read] Keywords: community
Successful Partner Communities with Salesforce
Tue, Oct 14th 2014 12:18p Mark Polly Zero Motorcycles needed a way to consolidate multiple partner facing systems into a simplified user interface, track sales and monitor participation programs and automate workflows. As we’ve seen from other customers, partners had to login to multiple systems. Using Community Cloud, Zero was able to provide one interface for the partners to login into and get information and process leads and improve sales.
Zero’s original model was B2C, thinking that consumers would order electri [read] Keywords: collaboration
Creating Customer Happiness with Salesforce Communities
Mon, Oct 13th 2014 3:12p Mark Polly Community Cloud is Salesforce’s newest and fastest growing cloud (until tomorrow). IDC has seen a huge jump in using social media to communicate with customers and respond to customer inquiries. The top 3 technologies that are planned to be used include discussion forums, public social networks, and online communities, which is where Community Cloud comes in.
Constant Contact, an all-in-one marketing platform, has over 600,000 small business customers. Constant Contact us [read] Keywords: administration
Content Marketing is Inherently Flawed?
Fri, Oct 10th 2014 11:12a Michael Porter In the past week I’ve either read or listened to two heads of global marketing for two well known brands. Both had a similar story with different sides of the same coin. Both had a message that dealt with Marketers having to forget about telling their brand story and go with what customers want to hear. The first was a session about leveraging social data with Michelle Lapierre who is the Sr. Director of Customer Experience at Marriott Rewards. The second is an article at cmo.com dis [read] Keywords: facebook
Why Do Contextual Ads Fail
Tue, Oct 7th 2014 3:12p Michael Porter I’ve blogged about the personalization failure before. Now it looks like others are catching on to the ultimate failure on their part………… even as they harvest huge amounts of private information about us. This article in ComputerWorld outlines the issues. The author Mike Elgan hits the topic of privacy quickly and never lets it go:
Companies like Google, Facebook and Amazon violate our privacy in order to show us relevant ads. So why do their ads miss the mar [read] Keywords: facebook