This week's WSO2 Summer School class features SOA security standards and best practices.
IT architects and developers who want to learn SOA security and identity management best practices are invited to attend “Security in SOA.” This interactive, online class is being offered at no cost as part of the WSO2 SOA Summer School program. It will be held on Thursday, July 2, 2009 at 9:00 a.m. Pacific.
The two-hour Security in SOA class will focus the implementation of security and identity management as a service using the two emerging open, user-centric identity standards: OpenID and Information Cards, as well as XACML for fine-grained authorization. Attendees will learn about Web services security standards, including WS-Security, WS-Trust, WS-Secure Conversation, and WS-Security Policy. The course will also review Information Cards as an application of WS-Trust, and the Oauth protocol for secure API authorization.
Find more information at http://wso2.com/about/news/wso2-summer-school-features-free-class-on-soa-security-standards-and-best-practices/.
Sphere: Related Content
Tags:
When you try to start Songbird(in my case version 1.1.2) on Ubuntu 8.10 and if you have libvsual-0.4-plugins installed in you system it will pop-up you a crash reporting component saying that Songbird start-up failed. And if you start Songbird from the terminal you will see following lines has printed on the console.
*** glibc detected *** ././songbird-bin: munmap_chunk(): invalid pointer: 0xb2d539e0 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7d2b454]
/usr/lib/libvisual-0.4.so.0(visual_mem_free+0x21)[0xb29e9141]
/usr/lib/libvisual-0.4.so.0[0xb29e0407]
/usr/lib/libvisual-0.4.so.0(visual_plugin_get_list+0x73)[0xb29e05e3]
/usr/lib/libvisual-0.4.so.0(visual_init+0x291)[0xb29efec1]
/usr/lib/gstreamer-0.10/libgstlibvisual.so[0xb2a8e1f4]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a592f6]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_plugin_load_file+0x62f)[0xb3a59bad]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a64822]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_registry_scan_path+0x135)[0xb3a649c7]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a14a44]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a14f30]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a15589]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so[0xb3a15b44]
/usr/lib/libglib-2.0.so.0(g_option_context_parse+0x5b3)[0xb6b1d803]
/home/milinda/Programs/Songbird/lib/libgstreamer-0.10.so(gst_init_check+0xf1)[0xb3a13d1b]
.......
If you came across this problem what you have to do is remove libvisual-0.4-plugins package from your system. Some forums posts ask you to remove libvsual-0.4-0, but don't do it. It'll remove some other important programs in your Ubuntu system if remove libvisual. Make sure that you only remove libvisual-plugins.
Sphere: Related Content
Tags:
As I discussed in the first part of this series of articles, BPEL will allow us to increase the flexibility, agility and efficiency of business process within an organization. Not only business processes, according to this paper(Grid Service Orchestration Using the Business Process Execution Language (BPEL)) WS-BPEL can even be use with scientific workflows. The above paper describes how to orchestrate scientific workflows using WS-BPEL and reliability, performance and scalability that can be achieved by using BPEL to model scientific workflows.
When studying the first example(Figure 1) provide in the WS-BPEL spec, we can see that there can be several types of execution of activities in real world business processes like, sequential executions, parallel executions, synchronizing concurrent activities, fault handling , event handling and etc. As described in the above paper there may be hundreds of parallel executions in scientific workflows written using WS-BPEL.

So in real world applications orchestration modeling language must fulfil following requirements:
- Model serial, parallel, conditional or other kinds of conditional flow dependency patterns
- interact with external services
- Exception handling, transactions and compensation handling
- Data manipulation
- Event handling
WS-BPEL 2.0 which is the evolution of BPEL 1.1 provides following language constructs to handle above mentioned and other advanced requirements in service orchestrations.
State of a BPEL Process
During runtime BPEL business process use typed variables to hold the data that constitute the state of the process. The values contained in such variables can be of two sources: either they come from messages exchanged with a partner, or it is intermediate data that is private to the process.
<variables>
<variable name="myVar1" messageType="myNS:myWSDLMessageDataType" />
<variable name="myVar1" element="myNS:myXMLElement" />
<variable name="myVar2" type="xsd:string" />
<variable name="myVar2" type="myNS:myComplexType" />
</variables>
Providing and Consuming Web Services
Receive activity, reply activity and invoke activity in BPEL allow exchanging message with external partners. Those simple activities can be used to consume messages from and providing messages to web service partners.
<receive name="ReceiveRequestFromPartner"
createInstance="yes"
partnerLink="ClientStartUpPLT"
operation="StartProcess" ... />
<reply name="ReplyResponseToPartner"
partnerLink="ClientStartUpPLT"
operation="StartProcess" ... />
<invoke name="InvokePartnerWebService"
partnerLink="BusinessPartnerServiceLink"
operation="partnerOperation" ... />
Structuring Process Logic
Every activity in a workflow must be structured in manner that reflect the real world scenario. So if we need to execute number of activities in sequential manner, we can use BPEL's sequence activity. On the other hand if-else activity allows you to select exactly one branch of the activity from a given set of choices. In BPEL you can use XPath expression to formulate your condition.
<sequence name="InvertMessageOrder">
<receive name="receiveOrder" ... />
<invoke name="checkPayment" ... />
<invoke name="shippingService" ... />
<reply name="sendConfirmation" ... />
</sequence>
<if name="isOrderBiggerThan5000Dollars">
<condition>
$order > 5000
</condition>
<invoke name="calculateTenPercentDiscount" ... />
<elseif>
<condition>
$order > 2500
</condition>
<invok e name="calculateFivePercentDiscount" ... />
</elseif>
<reply name="sendNoDiscountInformation" ... />
</else>
</if>
Repetitive Activities
If you need to execute business logic repeatedly in your BPEL you can use one from activities like while, repeatUntil or forEach. There are two variants of forEach: sequential and parallel. According to your requirements you can use parallel option to execute business logic inside forEach block parallely. For this executions must be independent from each other.
<while>
<condition>
$iterations > 3
</condition>
<invoke name="increaseIterationCounter" ... />
</while>
<repeatUntil>
<invoke name="increaseIterationCounter" ... />
<condition>
$iterations > 3
</condition>
</repeatUntil>
<forEach parallel="no" counterName="N" ...>
<startCounterValue>1</startCounterValue>
<finalCounterValue>5</finalCounterValue>
<scope>
<documentation>check availability of each item ordered</documentation>
<invoke name="checkAvailability" ... />
</scope>
</forEeach>
Sphere: Related Content
Tags:
As discussed in post "The average Software Developer versus the good Software Developer"by Alberto Gutierrez, there are few symptoms of beign a good software developer:
- You are passionate about programming.
- Others consider you a good Software Developer.
- You want to become a better Software Developer.
- Your main motivation for being a good Software Developer is not money.
If you are a software developer, It's good to check whether you have these symptoms.
Sphere: Related Content
Tags:
Every programmers dream is to create better code every day. Here are some tips from Making Good Software blog which will help you to create good code every day.
- Have your own to do list for the day.
- Do one thing at a time
- Do it right
- Don't finish some thing until it's completely done
- Better late than sorry BUT better sorry than never
Read more....
Sphere: Related Content
Tags:
Before stepping on the Sri Lankan soil, His Excellency Mahinda Rajapaksa, President of Sri Lanka and Commander in Chief of the Armed Forces paid tribute to his motherland by placing his forehead on the ground and worshiping the land he has liberated from terrorism.

Via defence.lk
Sphere: Related Content
Tags:
Ending 30 years of war, Sri Lanka's tamil tiger terrorists lay down their arms today. We as Sri Lankans dreamed about this day for a long time. Finally our war heroes defeated tamil tigers and rescued thousands of people from terrorists. This is known an world's largest rescue operation carried out by an army.

Sphere: Related Content
Tags:
Javascript is like impressionistic and avant-garde art, like jazz. It flows, it molds, it changes, like a dream. Java is like renaissance art, like classical music. Its beauty is in its form and structure, but it constrains your ability to express and invent - you have to follow the forms given to you.
Via http://davidvancouvering.blogspot.com.
Sphere: Related Content
Tags:
In today's SOA enabled enterprises ESB is used to connect, manage and and transform service interactions between Web services and legacy systems.
With WSO2 ESB,
- you can implement "Virtual services" which provides location transparency
- you do transport and protocol switching
- you can provide secure interface to client for a non-secure service
- you can create scheduled tasks with mediation capabilities
- you can use already available enterprise integration patterns
- you can use industry standard protocols such as FIX and Hessian Binary Web Services protocol
- you can implement event brokers
WSO2 ESB is powered by Apache Synapse and built on top of OSGI-based modular core which allows you to customize your ESB by adding features like service orchestration.
For more info watch flash demo at http://wso2.org/library/demonstrations/flash-demo-wso2-enterprise-service-bus-wso2-esb.
Sphere: Related Content
Tags:
A good programmer understands that that they have to continue to learn and grow. They strive to do their best at every effort, admit to failures and learn from them.
They are extraordinarily communicative. Not only are they able to explain complex technical terms to a layperson, but they go out of their way to act as devil’s advocate to their own idea to make sure they’re giving the best options to their client.
The best programmers know and accept that there is more than one way to do things, that not every problem is a nail, and that because there is always a better way to do something than how they were planning on they constantly seek to learn new techniques, technologies, and understanding.
A good programmer loves to program, and would do so in their spare time even if they already spend 80+ hours a week programming.
A good programmer knows that she/he is not a great programmer. Truly great programmers do not exist, there are only those who claim to be great, and those who know they are not great.
-Adam
Via Coder-Friendly
Sphere: Related Content
Tags:
Page 1 of 14 1 2 3 4 5 » ... Last »