Thanks to Sonia Malik for sharing this via Twitter: -
The IBM Lotus Connections administration UI application is an easy-to-install and easy-to-use IBM WebSphere Application Server portlet. Lotus Connections administrators can perform the majority of the functionality offered by the WSAdmin console without needing to know complex WSAdmin scripting languages.
Lotus Connections is a social networking application for business and is deployed on WebSphere Application Server. WebSphere Application Server deployment and its application servers, on which Lotus Connections is hosted, are maintained and administered by running various commands on the WebSphere Application Server administration console.
The administration console utilizes a series of Jython and Jacl script files to allow administrators to work with Lotus Connections. These files provide automated ways to access the Lotus Connections MBeans that change back-end settings in databases and configuration files that service a deployment. Working with these Jython and Jacl script files requires some programming and scripting knowledge; the ability to import packages in the terminal, assign and use variables, and other basic programming concepts, all in the Jython or Jacl languages, are required. These languages, while not inherently hard languages to use, are relatively specialized and might be unfamiliar to the average Lotus Connections administrator. Removing control of Lotus Connections from the administration console and putting it into a web-based solution alleviate the need for specialized skills, providing a cost of ownership reduction to Lotus Connections customers.
The Lotus Connections administration web interface provides an interface that is easy to install and easy to use. The interface is added as a portlet to the Integrated Solutions Console (ISC) of WebSphere Application Server and provides the majority of the functionality offered by the ISC with greatly increased usability and functionality. The web interface allows for easy administration of multiple Lotus Connections services in the same session and the ability to call certain functions on multiple services at the same time.
The article is available on developerWorks here.
*UPDATE 19 October 2010*
Sadly, this article has now been permanently withdrawn for legal reasons.
*UPDATE 19 October 2010*
Geeking in technology since 1985, with IBM Development, focused upon Docker and Kubernetes on the IBM Z LinuxONE platform In the words of Dr Cathy Ryan, "If you don't write it down, it never happened". To paraphrase one of my clients, "Every day is a school day". I do, I learn, I share. The postings on this site are my own and don’t necessarily represent IBM’s positions, strategies or opinions. Remember, YMMV https://infosec.exchange/@davehay
Tuesday, 31 August 2010
WebSphere Portal v7 - Download Document
Interestingly, the Download Document for WP7 has been published here, even though ( as far as I'm aware ), the software has not yet been released.
The System Requirements document has not yet been updated, but the Download Document does give a few clues, including the inclusion of DB2 UDB 9.7, Tivoli Directory Integrator 7 ( included with Portal for the first time afaik ) and, of course, WebSphere Application Server v7.
*UPDATE* I *may* be wrong on the release; it *looks* like the software is available on the download site .....
The System Requirements document has not yet been updated, but the Download Document does give a few clues, including the inclusion of DB2 UDB 9.7, Tivoli Directory Integrator 7 ( included with Portal for the first time afaik ) and, of course, WebSphere Application Server v7.
*UPDATE* I *may* be wrong on the release; it *looks* like the software is available on the download site .....
Monday, 30 August 2010
Book Review
Having finished a number of other reads, including Michael Sampson's User Adoption Strategies and Stieg Larsson's excellent Dragon Tattoo trilogy, plus various others, I'm now, as promised, cracking on with Packt Publishing's volume entitled Application Development for IBM WebSphere Process Server 7 and Enterprise Service Bus 7.
I'm up to Chapter 3 so far, with a good overview of Service Oriented Architecture, Business Process Management, WebSphere Integration Developer and WebSphere Process Server, plus a walk-through of the installation of WID and WPS.
Next step is to walk through the development of my first ever SOA project ( well, first ever since I attended a Proof of Technology at IBM Hursley Park back in 2007 ).
More to come, but it's good fund so far ...
I'm up to Chapter 3 so far, with a good overview of Service Oriented Architecture, Business Process Management, WebSphere Integration Developer and WebSphere Process Server, plus a walk-through of the installation of WID and WPS.
Next step is to walk through the development of my first ever SOA project ( well, first ever since I attended a Proof of Technology at IBM Hursley Park back in 2007 ).
More to come, but it's good fund so far ...
Saturday, 28 August 2010
MySQL on Linux with WebSphere Application Server - My First Adventure
Having worked with enterprise databases like DB2 UDB, Oracle and SQL Server, I thought I'd give MySQL a try.
Specifically, I wanted to run it on my native Linux 10.04 desktop, and then use the DB from within WebSphere Application Server.
Installing it was absolutely simple - I fired up Synaptic Package Manager, search for mysql and select to install one single package - mysql-server - and let Synaptic take care of the dependancies. After a fairly brief download/installation, I was asked to set the MySQL password ( in the DB2 world, this would be the instance owner's password ) using the following command: -
sudo dpkg-reconfigure mysql-server-5.1
This command can be re-run at any time, as/if required.
For the record, these are the packages that I installed: -
root@dmhw500:~# sudo dpkg --list | grep -i mysql
* The JDBC driver isn't part of the core package, but I needed it for WebSphere.
Having installed it, it took me 5 minutes to realise that I can't use it without being a root user: -
hayd@dmhw500:~$ mysql -p
Enter password:
ERROR 1045 (28000): Access denied for user 'hayd'@'localhost' (using password: YES)
whereas once I "became" root: -
hayd@dmhw500:~$ sudo bash
[sudo] password for hayd:
root@dmhw500:~# mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 36
Server version: 5.1.41-3ubuntu12.6 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
I was in like Flynn.
*UPDATE*
That nice Mr Andrew Frayling pointed out that I could easily overcome this issue by, as my normal non-root user, run the command: -
hayd@dmhw500:~$ mysql -u root -p
*UPDATE*
The next step was to create a database: -
mysql> create database loanrequest;
Query OK, 1 row affected (0.00 sec)
and then make that my current database ( equivalent of DB2 CONNECT TO LOANREQUEST ): -
mysql> use loanrequest;
Database changed
and then create a table: -
mysql> create table loanrequests(name varchar(30) not null,custnum varchar(10) not null primary key,amount float not null);
Query OK, 0 rows affected (0.11 sec)
and then look at the table just created: -
mysql> describe loanrequests;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(30) | NO | | NULL | |
| custnum | varchar(10) | NO | PRI | NULL | |
| amount | float | NO | | NULL | |
+---------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
and then populate the table: -
mysql> insert into loanrequests values('Dave Hay','006734',12345.67);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests values('Homer Simpson','123456',456.78);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Marge Simpson','661222',123.42);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Lisa Simpson','123123',21323.23);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Bart Simpson','43215',6651.21);
Query OK, 1 row affected (0.00 sec)
and then query the table: -
mysql> select * from loanrequests;
+---------------+---------+---------+
| name | custnum | amount |
+---------------+---------+---------+
| Dave Hay | 006734 | 12345.7 |
| Homer Simpson | 123456 | 456.78 |
| Marge Simpson | 661222 | 123.42 |
| Lisa Simpson | 123123 | 21323.2 |
| Bart Simpson | 43215 | 6651.21 |
+---------------+---------+---------+
5 rows in set (0.00 sec)
mysql> quit
So far, so good.
I then wanted to access the database from WebSphere Application Server - I'm using 6.1.0.29.
This is a relatively simple matter that's covered elsewhere, so I'll merely provide the key points: -
a) Copy the JDBC driver to the WebSphere lib/ext directory
cp /usr/share/java/mysql-connector-java-5.1.10.jar /opt/IBM/WebSphere/AppServer/lib/ext
b) Log into the WAS admin console ( Integrated Solutions Console ) -> https://dmhw500.uk.ibm.com:10041/ibm/console/login.do?action=secure
c) Navigate to Resources -> JDBC -> JDBC Providers
d) Create a new provider: -
Name: MySQL
Class path: /opt/IBM/WebSphere/AppServer/lib/ext/mysql-connector-java-5.1.10.jar
Implementation class name: com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
e) Create a new datasource: -
Name: loanRequest
JNDI name: jdbc/loanRequest
f) Create the following three custom properties ( you may have a large number created via the WAS template; I chose to delete them all and merely add these three ): -
serverName: dmhw500
databaseName: loanrequest
port: 3306
g) Create a JAAS - J2C authentication data alias ( keeps credentials separate from your data sources ): -
User ID: root
Password: passw0rd
Having saved the configuration, and restarted WebSphere, I was able to successfully test the connection, which returned the message: -
The test connection operation for data source loanRequest on server WebSphere_Portal at node dmhw500 was successful with 1 warning(s)
For the record, the warning, as seen in SystemOut.log, is: -
[28/08/10 17:03:52:613 BST] 00000036 DSConfigurati W DSRA0174W: Warning: GenericDataStoreHelper is being used.
Obvious really :-)
For me, the next step was to then use WebSphere Portlet Factory Designer to access the newly created datasource, and add some create/read/update/delete methods to my database from a portlet ... which is nice :-)
Specifically, I wanted to run it on my native Linux 10.04 desktop, and then use the DB from within WebSphere Application Server.
Installing it was absolutely simple - I fired up Synaptic Package Manager, search for mysql and select to install one single package - mysql-server - and let Synaptic take care of the dependancies. After a fairly brief download/installation, I was asked to set the MySQL password ( in the DB2 world, this would be the instance owner's password ) using the following command: -
sudo dpkg-reconfigure mysql-server-5.1
This command can be re-run at any time, as/if required.
For the record, these are the packages that I installed: -
root@dmhw500:~# sudo dpkg --list | grep -i mysql
ii libdbd-mysql-perl 4.012-1ubuntu1 A Perl5 database interface to the MySQL databa
ii libmysql-java 5.1.10+dfsg-2ubuntu1 Java database (JDBC) driver for MySQL
ii libmysqlclient16 5.1.41-3ubuntu12.6 MySQL database client library
ii mysql-client-5.1 5.1.41-3ubuntu12.6 MySQL database client binaries
ii mysql-client-core-5.1 5.1.41-3ubuntu12.6 MySQL database core client binaries
ii mysql-common 5.1.41-3ubuntu12.6 MySQL database common files (e.g. /etc/mysql/m
ii mysql-server 5.1.41-3ubuntu12.6 MySQL database server (metapackage depending o
ii mysql-server-5.1 5.1.41-3ubuntu12.6 MySQL database server binaries
ii mysql-server-core-5.1 5.1.41-3ubuntu12.6 MySQL database core server files
* The JDBC driver isn't part of the core package, but I needed it for WebSphere.
Having installed it, it took me 5 minutes to realise that I can't use it without being a root user: -
hayd@dmhw500:~$ mysql -p
Enter password:
ERROR 1045 (28000): Access denied for user 'hayd'@'localhost' (using password: YES)
whereas once I "became" root: -
hayd@dmhw500:~$ sudo bash
[sudo] password for hayd:
root@dmhw500:~# mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 36
Server version: 5.1.41-3ubuntu12.6 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
I was in like Flynn.
*UPDATE*
That nice Mr Andrew Frayling pointed out that I could easily overcome this issue by, as my normal non-root user, run the command: -
hayd@dmhw500:~$ mysql -u root -p
*UPDATE*
The next step was to create a database: -
mysql> create database loanrequest;
Query OK, 1 row affected (0.00 sec)
and then make that my current database ( equivalent of DB2 CONNECT TO LOANREQUEST ): -
mysql> use loanrequest;
Database changed
and then create a table: -
mysql> create table loanrequests(name varchar(30) not null,custnum varchar(10) not null primary key,amount float not null);
Query OK, 0 rows affected (0.11 sec)
and then look at the table just created: -
mysql> describe loanrequests;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(30) | NO | | NULL | |
| custnum | varchar(10) | NO | PRI | NULL | |
| amount | float | NO | | NULL | |
+---------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
and then populate the table: -
mysql> insert into loanrequests values('Dave Hay','006734',12345.67);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests values('Homer Simpson','123456',456.78);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Marge Simpson','661222',123.42);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Lisa Simpson','123123',21323.23);
Query OK, 1 row affected (0.00 sec)
mysql> insert into loanrequests value('Bart Simpson','43215',6651.21);
Query OK, 1 row affected (0.00 sec)
and then query the table: -
mysql> select * from loanrequests;
+---------------+---------+---------+
| name | custnum | amount |
+---------------+---------+---------+
| Dave Hay | 006734 | 12345.7 |
| Homer Simpson | 123456 | 456.78 |
| Marge Simpson | 661222 | 123.42 |
| Lisa Simpson | 123123 | 21323.2 |
| Bart Simpson | 43215 | 6651.21 |
+---------------+---------+---------+
5 rows in set (0.00 sec)
mysql> quit
So far, so good.
I then wanted to access the database from WebSphere Application Server - I'm using 6.1.0.29.
This is a relatively simple matter that's covered elsewhere, so I'll merely provide the key points: -
a) Copy the JDBC driver to the WebSphere lib/ext directory
cp /usr/share/java/mysql-connector-java-5.1.10.jar /opt/IBM/WebSphere/AppServer/lib/ext
b) Log into the WAS admin console ( Integrated Solutions Console ) -> https://dmhw500.uk.ibm.com:10041/ibm/console/login.do?action=secure
c) Navigate to Resources -> JDBC -> JDBC Providers
d) Create a new provider: -
Name: MySQL
Class path: /opt/IBM/WebSphere/AppServer/lib/ext/mysql-connector-java-5.1.10.jar
Implementation class name: com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
e) Create a new datasource: -
Name: loanRequest
JNDI name: jdbc/loanRequest
f) Create the following three custom properties ( you may have a large number created via the WAS template; I chose to delete them all and merely add these three ): -
serverName: dmhw500
databaseName: loanrequest
port: 3306
g) Create a JAAS - J2C authentication data alias ( keeps credentials separate from your data sources ): -
User ID: root
Password: passw0rd
Having saved the configuration, and restarted WebSphere, I was able to successfully test the connection, which returned the message: -
The test connection operation for data source loanRequest on server WebSphere_Portal at node dmhw500 was successful with 1 warning(s)
For the record, the warning, as seen in SystemOut.log, is: -
[28/08/10 17:03:52:613 BST] 00000036 DSConfigurati W DSRA0174W: Warning: GenericDataStoreHelper is being used.
Obvious really :-)
For me, the next step was to then use WebSphere Portlet Factory Designer to access the newly created datasource, and add some create/read/update/delete methods to my database from a portlet ... which is nice :-)
Friday, 27 August 2010
Using the new IBM Lotus Connections 2.5 migration tool
A useful article from the IBM China labs, worth a read if you're looking to migrate to Lotus Connections 2.5 - I'm guessing that there'll be a new version along once the next release of Connections is available: -
This article describes the new IBM® Lotus® Connections 2.5 migration tool, including its architecture, how to use it, and how to troubleshoot errors and perform a recovery. The new migration tool is based on Extensible Stylesheet Language Transformation (XSLT) technology and provides a simple, effective way to migrate all necessary artifacts, freeing you from manually reapplying configurations.
Migrating artifacts is a key task when you are migrating your existing Lotus Connections version. Using the migration tool in version 2.0.1, you were able to accomplish this task to some extent; for example, you could migrate some configuration and all data files. You still had to customize many configurations manually, which is one of the most painful tasks in the migration process.
The newly added features in Lotus Connections 2.5 mean that many more configurations must be migrated. The latest migration tool, which is based on XSLT technology, provides a simple and effective way to migrate all necessary configurations and data files. With its help, you don't need to manually reapply all configurations.
This article explains how to use the Lotus Connections 2.5 migration tool, including how to troubleshoot errors and perform a recovery, so that you can understand the migration tool and correctly migrate the artifacts of your existing Lotus Connections environment.
It is assumed that you have a good understanding of IBM WebSphere® Application Server and a general understanding of XSLT and XML Path Language (XPath) technology.
Using the new IBM Lotus Connections 2.5 migration tool
This article describes the new IBM® Lotus® Connections 2.5 migration tool, including its architecture, how to use it, and how to troubleshoot errors and perform a recovery. The new migration tool is based on Extensible Stylesheet Language Transformation (XSLT) technology and provides a simple, effective way to migrate all necessary artifacts, freeing you from manually reapplying configurations.
Migrating artifacts is a key task when you are migrating your existing Lotus Connections version. Using the migration tool in version 2.0.1, you were able to accomplish this task to some extent; for example, you could migrate some configuration and all data files. You still had to customize many configurations manually, which is one of the most painful tasks in the migration process.
The newly added features in Lotus Connections 2.5 mean that many more configurations must be migrated. The latest migration tool, which is based on XSLT technology, provides a simple and effective way to migrate all necessary configurations and data files. With its help, you don't need to manually reapply all configurations.
This article explains how to use the Lotus Connections 2.5 migration tool, including how to troubleshoot errors and perform a recovery, so that you can understand the migration tool and correctly migrate the artifacts of your existing Lotus Connections environment.
It is assumed that you have a good understanding of IBM WebSphere® Application Server and a general understanding of XSLT and XML Path Language (XPath) technology.
Using the new IBM Lotus Connections 2.5 migration tool
Wednesday, 25 August 2010
SECJ0369E: Authentication failed when using LTPA. The exception is
This one goes into the "Doh!" box, but I thought I'd blog it here (a) to aid me in the future and (b) perhaps to aid others.
One of my colleagues was finding that certain users were unable to log into a Lotus Connections 2.5.0.1 environment - the problem only appeared to affect a specific subset of users, added more recently via LDAP ( Tivoli Directory Server ).
The exceptions that we were seeing were: -
[8/25/10 10:40:38:368 GMT] 0000002f LTPAServerObj E SECJ0369E: Authentication failed when using LTPA. The exception is <null>
[8/25/10 10:40:38:369 GMT] 0000002f FormLoginExte E SECJ0118E: Authentication error during authentication for user hayd
with: -
Your user name and/or password does not match any existing accounts. Please check and try again
in the browser.
Being a techie, I immediately dived off into the depths of the "problem", looking at LDAP using Apache Directory Studio, DB2 database tables ( EMPINST.EMPLOYEE in PEOPLEDB ), TDI logs etc. I even re-ran the to-DB2 TDI assembly line, via the script ./populate_from_dn_file.sh in /home/idcuser/LC/Wizards/TDIPopulation/TDISOL/linux having manually added a DN to collect.dns.
Having done all this ....
Do you know what the solution was ?
We were using the wrong passwords :-)
Isn't it nice when a plan comes together ........................
One of my colleagues was finding that certain users were unable to log into a Lotus Connections 2.5.0.1 environment - the problem only appeared to affect a specific subset of users, added more recently via LDAP ( Tivoli Directory Server ).
The exceptions that we were seeing were: -
[8/25/10 10:40:38:368 GMT] 0000002f LTPAServerObj E SECJ0369E: Authentication failed when using LTPA. The exception is <null>
[8/25/10 10:40:38:369 GMT] 0000002f FormLoginExte E SECJ0118E: Authentication error during authentication for user hayd
with: -
Your user name and/or password does not match any existing accounts. Please check and try again
in the browser.
Being a techie, I immediately dived off into the depths of the "problem", looking at LDAP using Apache Directory Studio, DB2 database tables ( EMPINST.EMPLOYEE in PEOPLEDB ), TDI logs etc. I even re-ran the to-DB2 TDI assembly line, via the script ./populate_from_dn_file.sh in /home/idcuser/LC/Wizards/TDIPopulation/TDISOL/linux having manually added a DN to collect.dns.
Having done all this ....
Do you know what the solution was ?
We were using the wrong passwords :-)
Isn't it nice when a plan comes together ........................
Tuesday, 24 August 2010
Encouraging User Adoption - Getting Users to update and maintain their own Profiles in Lotus Connections
An interesting post from Michael Ransley, promoting a widget from, I assume, his company, JustNudge.
Lotus Connections has a lot of options and places where information can be entered and it can be overwhelming for a new user who doesn’t know where to start. A simple graphical widget can give them an indication of their profile maturity and how it can be improved. To a certain point these can be thought of as collectable achievements and is a well known method in getting users more involved in systems.
JustNudge has produced a widget that provides this feedback to the user, giving them both a graphical representation of their progress together with information on a potential next step.
http://www.justnudge.com/2010/08/profile-population
Check it out ...
Lotus Connections has a lot of options and places where information can be entered and it can be overwhelming for a new user who doesn’t know where to start. A simple graphical widget can give them an indication of their profile maturity and how it can be improved. To a certain point these can be thought of as collectable achievements and is a well known method in getting users more involved in systems.
JustNudge has produced a widget that provides this feedback to the user, giving them both a graphical representation of their progress together with information on a potential next step.
http://www.justnudge.com/2010/08/profile-population
Check it out ...
Subscribe to:
Posts (Atom)
Note to self - Firefox and local connections
Whilst trying to hit my NAS from Firefox on my Mac, I kept seeing errors such as:- Unable to connect Firefox can’t establish a connection t...
-
Error "ldap_sasl_interactive_bind_s: Unknown authentication method (-6)" on a LDAPSearch command ...Whilst building my mega Connections / Domino / Portal / Quickr / Sametime / WCM environment recently, I was using the LDAPSearch command tha...
-
Having created a new user on an Ubuntu 16.04 boxen, I started seeing this: - Received disconnect from 192.168.3.123 port 22:2: Too many au...
-
I'm tinkering with a tool that uses pip and python, and was seeing: - zsh: /usr/local/bin/pip: bad interpreter: /usr/bin/python: no such...