01 Statement of workI find one of the most useful tool to keep my notes is Tiddylywiki (www.tiddlywiki.com). It is extremely easy to use and no setup required.
02 Research and Analyse
03 Architecture and Design
05 Project Management
06 Project Deliverables
07 Administration
09 Tools
10 References
11 Working
Friday, June 25, 2010
Customer engagement template
Regardless whether the customer engagement is one week or one year, I always organise the my files in the following hierarchy. Firstly, it helps you focus on the purpose and customer expectation. Secondly, some customers are difficult being organised allows you to backtrack all your work for justification.
Wednesday, June 16, 2010
SSL certificate in webMethods Software
Generating a SSL Private Key
- Install webMethods Certificate Toolkit which can be found in version 6.5 image.
- Run webMethods Certificate Toolkit
- Use default keysize of 1024 bits
- Label filename as MyEnterprise_PrivateKey.der
- Run webMethods Certificate Toolkit
- Select the private key generated above
- Label the CSR filename as MyEnterprise_CSR.pem
- Fill in the Server Information as required
- Send the Certificate Signing Request (CSR) to an authorised person who deal commercially with VeriSign.
- Once the purchase of SSL Certificate is complete VeriSign will response with an email
- The cert.p7b attachment received from verisign is a PKCS#7 file which contains the CA certificate and the signed/public key, you will need to extract them.
- Save this attachment as MyEnterprise.p7b
- Double-click on the MyEnterprise.p7b to inspect the certificates, note the expiration date
- Double-click CA cetrificate (Issued To=www.verisign.com...)
- Navigate to the Details tab
- Click on the Copy to File button
- Export file as DER encoded binary X.509 format, label filename as MyEnterprise_CA.cer
- Rename MyEnterprise_CA.cer to MyEnterprise_CA.der
- Double-click CA cetrificate (Issued To=b2b.jemena.com.au...)
- Navigate to the Details tab
- Click on the Copy to File button
- Export file as DER encoded binary X.509 format, label filename as MyEnterprise_Signed.cer
- Rename MyEnterprise_Signed.cer to MyEnterprise_Signed.der
- Request MyEnterprise's private key, signed/public key and CA certificates from Security Team
- Send MyEnterprise's signed/public key and CA certificates to CompanyA
- Request CompanyA's signed/public key and CA certificates from CompanyA
- Navigate to Reverse Invoke Server > IS Adminstration > Security > Ports > Gateway External
- Upload MyEnterprise_PrivateKey.der and MyEnterprise_Signed.der onto Reverse Invoke Server under /IntegrationServer/config/cert/myent directory
- Upload MyEnterprise_CA.der onto Reverse Invoke Server under /IntegrationServer/config/cert/cas directory
- Under Listener Specific Credentials, select Protocol as HTTPS
- Set Server's Certificate as config/cert/myent/MyEnterprise_Signed.der
- Set Authority's Certificate as config/cert/cas/MyEnterprise_CA.der
- Set Private Key as config/cert/myent/MyEnterprise_PrivateKey.der
- Set Trusted Authority Directory as config/cert/cas
- Navigate to Internal Server > IS Adminstration > Security > Certificates > Configure Client Certificates
- Upload MyEnterprise_Sign.der onto Internal Server under /IntegrationServer/config/cert/com_a directory
- Under Import Certificate, set Certificate Path as
/IntegrationServer/config/cert/com_a/CompanyA_Signed.der - Set User as Administrator (recommend you create unique user on IS for easy supportability)
- Set Usage as SSL Authentication
- Click on Import Certificate
- Request v's private key, signed/public key and CA certificates from Security Team
- Send MyEnterprise's signed/public key and CA certificates to CompanyA
- Request CompanyA's signed/public key and CA certificates from CompanyA
- Run webMethods Trading Networks Console, logon to Internal Server
- Navigate Enterprise profile > Security > SSL Client
- Under Certificate Chain, add MyEnterprise_Signed.der and MyEnterprise_CA.der
- Set Private Key as MyEnterprise_PrivateKey.der
- Save Enterprise profile
- Upload MyEnterprise_CA.der and CompanyA_CA.der onto Internal Server under /IntegrationServer/config/cert/cas directory
- Navigate to Internal Server > IS Adminstration > Security > Certificates > Edit Certificates Settings
- Under Trusted Certificates, set CA Certificate Directory as config/cert/cas
- Save changes
Monday, June 14, 2010
Roles and responsibilities
A good Consultant is a subject matter expert (SME) in his role.
So what makes a great Consultant? He who have two or more core competencies and is capable of performing different roles in appropriate situations.
So what makes a great Consultant? He who have two or more core competencies and is capable of performing different roles in appropriate situations.
Role | Responsibility |
---|---|
Solution & Enterprise Architects | Enterprise and business process architects responsible for defining and maintaining business solution design, enterprise architecture standards and principles |
Project/Integration Lead | Integration lead (or the Integration Release and Resource Lead) manages the integration deliverables, resources and planning. |
Integration COE | Consists of Integration Architects responsible for integration solution consulting and process governance assurance. |
Design Owner | Design owner reports to Integration Release and Resource Lead and responsible for defining integration design as per requirements. |
Development Owner | Development owner reports to Integration Release and Resource Lead and responsible for development of solution as per design requirements. |
Environment Management & Integration Support | Environment management and integration support team is responsible for supporting the integration solution and environment (inc. production). This team also provides feedback in design processes. |
Configuring sticky session in CISCO Content Services Switch (CSS) load-balancer
One of the best thing in delivery is engaging in a greenfield project. You discover so much more about the limitation about the product stack.
In this scenario, we are configuring hardware load balancing (CISCO CSS) for the webMethods Integration Server.
Problem: When accessing the instance via the Virtual Internet Protocol (VIP), user is continuously being prompted for credentials.
Facts: This is caused by the TCP three-way handshake and cookie in the webMethods Integration Server.
The customer has configured the CSS to look for a cookie called ‘ssnid=’
and then told the service to look for the following string;
This will not work because the string doesn’t exist in the cookie.
Resolution: The only workaround is to configure the arrowpoint-cookie. This is a cookie generated by the CSS itself and inserted into the TCP stream.
For example the owner and content should look something like this (remove all redundant commands)
In this scenario, we are configuring hardware load balancing (CISCO CSS) for the webMethods Integration Server.
Problem: When accessing the instance via the Virtual Internet Protocol (VIP), user is continuously being prompted for credentials.
Facts: This is caused by the TCP three-way handshake and cookie in the webMethods Integration Server.
- The user browse to the VIP
- CSS forward the request to Node 1
- Node 1 send authentication request to the user with a random hex number ssnid=29c4f640596011de9579da14127f22f1 in the HTTP header
- The user enter his/her credential and submit
- The browser send the response the CSS
- CSS forward the response to Node 2
- Node 2 rejected the response because of unrecognised SSNID
- Node 2 send authentication request to the user with a random hex number ssnid=b9066b60559411de9034cfa576455f64 in the HTTP header
- The user enter his/her credential and submit
- This goes around in an infinite loop.
The customer has configured the CSS to look for a cookie called ‘ssnid=’
owner WMQA-VIP content WMQA-HTTP-N vip address 146.195.84.125 add service WMQA-1-HTTP-N port 8080 protocol tcp add service WMQA-2-HTTP-N string range 208 to 528 string prefix "ssnid=" advanced-balance cookies
and then told the service to look for the following string;
service WMQA-1-HTTP-N string WMQA-1
This will not work because the string doesn’t exist in the cookie.
Resolution: The only workaround is to configure the arrowpoint-cookie. This is a cookie generated by the CSS itself and inserted into the TCP stream.
For example the owner and content should look something like this (remove all redundant commands)
service WMQA-1-HTTP-N no string owner STICKY-VIP content STICKY-WMQA-HTTP-N vip address 146.195.84.125 add service WMQA-1-HTTP-N add service WMQA-2-HTTP-N advanced-balance arrowpoint-cookie sticky-mask 255.255.240.0 protocol tcp port 8080 url "/*" active
Saturday, June 12, 2010
Right angle bracket (>) in XML Specification
I like to close the discussion about the use of the right angle bracket (>) in XML document. Despite what the the claim "the greater than character is legal, but it is a good habit to replace it" by the w3schools, usage of the right angle bracket must be escaped! It clearly mentioned in the XML 1.0 Specifications:
The ampersand character (&) and the left angle bracket (<) must not appear in their literal form, except when used as markup delimiters, or within a comment, a processing instruction, or a CDATA section. If they are needed elsewhere, they must be escaped using either numeric character references or the strings " & " and " < " respectively. The right angle bracket (>) may be represented using the string " > ", and must, for compatibility, be escaped using either " > " or a character reference when it appears in the string " ]]> " in content, when that string is not marking the end of a CDATA section.W3C Recommendation, Extensible Markup Language (XML) 1.0 (Fifth Edition), 26 November 2008
In the content of elements, character data is any string of characters which does not contain the start-delimiter of any markup and does not include the CDATA-section-close delimiter, " ]]> ". In a CDATA section, character data is any string of characters not including the CDATA-section-close delimiter, " ]]> ".
Wednesday, June 09, 2010
How to create rule to forward meeting requests?
As a Consultant I often engaged to many customers, I have a hard time keeping track of my meetings. So I'm using my consulting company's exchange server to centralise all my appointments.
I do not believe there is a template for this one. You might have to start with a blank rule. Here is what I did:
- Start Microsoft Outlook
- Click "Tools", "Rules and Alerts", "New Rule", Start with a blank rule "Check Messages When They Arrive"
- Check the box that says "which is a meeting invitation or update"
- Click Next
- Check the box that says "move it to the specified folder"
- Ensure you click on "specified" and choose the correct folder
Tuesday, June 08, 2010
OASIS ebXML version 2.0 implementation
The Advanced Metering Infrastructure (AMI) project in Victoria, Australia is the world first (definitely the first in Asia Pacific) production implementation of OASIS ebXML v2.0. At the time of the post there is one one other client in Europe trialing this standard in pre-production status.
For those who worked in the VicGas market currently supporting ebMS v1.0, don't underestimate ebMS v2.0, because it has significant differences. Before you get started, I advise you to read the following documents:
ebXML Message Service Specification v2.0 - describes the concept, background, objective and core functionality. Two sections in particular are worth noting. First, ebXML with SOAP, this should give you the technical understanding the transport protocol of messages. Second, Reliable Messaging Module, these optional attributes provide guarantee delivery of messages.
ebXML Collaborative Partner Profile Agreement (CPPA) v2.0 - in ebXML v2.0, CPPA is mandatory, so here is one I prepared earlier.
There are currently two commercial adapters available in the market that supported ebXML v2.0:
The logical architecture of your implementation should follow this pattern.
If you have further questions, please don't hesitate to contact me.
For those who worked in the VicGas market currently supporting ebMS v1.0, don't underestimate ebMS v2.0, because it has significant differences. Before you get started, I advise you to read the following documents:
ebXML Message Service Specification v2.0 - describes the concept, background, objective and core functionality. Two sections in particular are worth noting. First, ebXML with SOAP, this should give you the technical understanding the transport protocol of messages. Second, Reliable Messaging Module, these optional attributes provide guarantee delivery of messages.
ebXML Collaborative Partner Profile Agreement (CPPA) v2.0 - in ebXML v2.0, CPPA is mandatory, so here is one I prepared earlier.
There are currently two commercial adapters available in the market that supported ebXML v2.0:
If you have further questions, please don't hesitate to contact me.
Cloning webMethods Integration server
This approach is not supported by Software AG, but its a quick way to replicate another Integration Server instance for testing or proof-of-concept.
- Shutdown the source IS
- Copy the entire directory across
- Delete the folowing directories on the new instance, they will regenerate on first startup
- Audit/data
- Logs
- Datastore
- Documentstore
- Replicate (keep directories)
- Wmrepository2
- Wmrepository4
- The lockfile
- /config/dispatch.cnf & /config/backup/dispatch.cnf
- Update the following files to reflect new target IS location and desired port number. The following files need to be modified
- /IntegrationServer/bin/ini.cnf
- /IntegrationServer/bin/jcode.sh
- /IntegrationServer/bin/server.sh
- /IntegrationServer/config/port.cnf
- /IntegrationServer/config/server.cnf
- /IntegrationServer/packages/WmRoot/config/listeners.cnf
- That's it!
Configuring webMethods Broker 7.1.2 as a JMS Provider
Increasingly, customers are aware of the value in adopting open standards within their IT infrastructure.
In middleware Java Message Service (JMS) is the most widely standard used for sending and receiving messages. It allows components based on Java 2 Platform, Enterprise Edition (J2EE) to create, send, receive, and read messages.
Instructions below is a guide for installing and configuring webMethods Software for JMS compatible.
Instructions below is a guide for installing and configuring webMethods Software for JMS compatible.
- Install Integration Server 7.1.2 (localhost:5555) and Broker Server (localhost:6849)
- Remove all unused packages
- Add developer account
- Set Outbound Passwords to 0
- Set Broker Configuration to Not Configured (restart required)
- Install WmBrokerAdmin_6_5.zip package
- Remove default broker and create ESB JMS broker
- Create JMS Connection Alias to ESB@localhost:6849
- Modify JNDI properties file (C:\webMethods712\Broker\bin\jndi.properties) to refers to the ESB JMS Broker
- Create JMS Connection Alias
- Bind JMS topics to JNDI (so that it can be visible to 3rd JMS)
- Create JNDI Provider Alias
MSDOS> cd C:\webMethods712\Broker\bin MSDOS> .\broker_delete.exe "Broker #1@localhost:6849" MSDOS> .\broker_create.exe ESB@localhost:6849 -default -description "Enterprise Service Bus JMS Broker"
java.naming.factory.initial=com.webmethods.jms.naming.WmJmsNamingCtxFactory java.naming.provider.url=wmjmsnaming://ESB@localhost:6849 com.webmethods.jms.naming.clientgroup=admin
Connection Alias Name: ESB_JMS Enabled: Yes Description: Enterprise Service Bus JMS Broker Transaction Type: NO_TRANSACTION Connection Client ID: HOST_IS Create Connection Using: NATIVE WEBMETHODS API Broker Host: localhost:6849 Broker Name: ESB Client Group: admin
MSDOS> cd C:\webMethods712\Broker\bin\ MSDOS> .\jmsadmin.exe -p jndi.properties / > conn broker ESB server localhost:6849 Connected to ESB on localhost:6849 / > list / > create topic testTopic / > permit group admin to publish testTopic / > permit group admin to subscribe testTopic / > bind topic testTopic with tn=testTopic / > bind tcf topicFactory with brokerHost=localhost:6849 group=admin brokerName=ESB / > list [1]: testTopic ==> com.webmethods.jms.impl.WmTopicImpl / > quit
JNDI Alias Name: JNDI_ESB Description: JNDI for ESB JMS Broker Initial Context Factory: com.webmethods.jms.naming.WmJmsNamingCtxFactory Provider URL: wmjmsnaming://ESB@localhost:6849 Other Properties: com.webmethods.jms.naming.clientgroup=admin
Macquarie Professional Assessments
While ago I attempted the Macquarie Professional Assessments. Attach is my solution to the Practice Leaflet.
Drive: The surprising truth about what motivates us
Anyone who employs or manages staff in a creative enterprise would be mad to dismiss the ideas in this video.
Subscribe to:
Posts (Atom)
Topics
- 12c (1)
- Architecture (2)
- B2B (1)
- Banking (1)
- BPEL (3)
- Cisco (1)
- ebXML (1)
- EDIFACT (1)
- Effective Management (2)
- Engineered Systems (2)
- Exadata (2)
- Exalogic (1)
- Governance (1)
- Innovative (1)
- Issue Management (1)
- ITIL (1)
- Java (3)
- JDeveloper (2)
- Methods (27)
- Mobility (1)
- OFM (5)
- OIC (1)
- Oracle SOA Suite (7)
- OSB (1)
- Principles (8)
- Release Management (1)
- Scripting (1)
- Standards (3)
- Virtualization (1)
- webMethods (6)
- XPath (1)
Archive
-
▼
2010
(28)
-
▼
Jun
(11)
- Customer engagement template
- SSL certificate in webMethods Software
- Roles and responsibilities
- Configuring sticky session in CISCO Content Servic...
- Right angle bracket (>) in XML Specification
- How to create rule to forward meeting requests?
- OASIS ebXML version 2.0 implementation
- Cloning webMethods Integration server
- Configuring webMethods Broker 7.1.2 as a JMS Provider
- Macquarie Professional Assessments
- Drive: The surprising truth about what motivates us
-
▼
Jun
(11)