ASK Configuration Assistant
ASK
Configuration Assistant
Introduction
Prerequisite
Configuring
NS
Creating
ns.ear for the selected application server(s)
Configuring
ASK
Creating
askServer.ear for the selected application server(s)
Deploying
on OC4J
Deploying
on JBoss 4
Creating
Queues and ConnectionFactory
Deploying
the ear files
Deploying
on IBM Websphere 6.0
Creating
Queues and JMS Resources
Deploying
the ear files
Deploying
on BEA Weblogic 9.0
Creating
Queues and JMS Modules
Deploying
the ear files
Introduction
This
document describes the steps needed to configure ASK for use with the supported
Application Servers and different transport delivery types.
As part of
the ASK configuration, you 19219i815t may need to configure NS. You can find all the
needed files in ASKCA directory, which has two subdirectories: ASK and NS. The
following diagram shows a view of the ASKCA directory with the NS subdirectory
expanded.
Prerequisite
Ensure
that Apache ANT is available on the host machine for running build scripts.
Configuring NS
A.
Select the application server(s) for which the
NS component needs to be built. Set the appropriate property inside drivers.properties
file to true as shown below.
Drivers.properties
|
Value
|
Remarks
|
use.oc4j
|
true
|
Generate NS component for
OC4J
|
use.jboss
|
true
|
Generate NS component for
JBoss 4
|
use.websphere
|
true
|
Generate NS component for
IBM Websphere 6.0
|
use.weblogic
|
true
|
Generate NS component for
BEA Weblogic 9.0
|
- Select
the driver(s) needed for the NS component. Set the appropriate property
inside drivers.properties file to true as shown below.
Drivers.properties
|
Value
|
Remarks
|
im.driver
|
true
|
Requires IM driver in NS
component
|
email.driver
|
true
|
Requires Email driver in
NS component
|
- Set
the user-specific properties for the selected drivers.
Creating ns.ear for the selected application server(s)
- Update
the drivers.properties file with the appropriate values.
- Invoke
ant configure command in the NS directory.
For each application server selected, an ns.ear
file will be generated under dist folder in the corresponding subdirectory.
Configuring ASK
- Rename
the appConfig-template.xml file to appConfig.xml
- Specify
the access points in the appConfig.xml file.
Note: Use the
same IM, Email, SMS account that was specified in the NS
drivers.properties file for
creating ns.ear.
- Rename
the askca.properties.template file to askca.properties
Specify the correct path of the
"jdev/wireless/j2ee/applications" directory.
The
"askServer.ear" will be picked up from this location.
Specify the correct path of the "jdev/lib"
directory.
The
"xmlparserv2.jar" will be picked up from this location.
Specify the correct path of the
"jdev/diagnostics/lib" directory.
The
"ojdl.jar" will be picked up from this location.
Change the port for the "Help App" URL if
you are not using the default ports.
The default values present in the
file are given below:
ask.help.app.url.oc4j = https://localhost:8888/ask-help-app/faces/HelpApp.jspx
ask.help.app.url.jboss = https://localhost:8080/ask-help-app/faces/HelpApp.jspx
ask.help.app.url.weblogic = https://localhost:7001/ask-help-app/faces/HelpApp.jspx
ask.help.app.url.websphere = https://localhost:9080/ask-help-app/faces/HelpApp.jspx
Creating
askServer.ear for the selected application server(s)
The ASK directory structure is
shown below:
Run ant configure command
in the ASK directory.
The askServer.ear file will
be generated under dist folder for each selected application server.
Deploying on OC4J
Add Notification Service Queue entries into
OC4J.
Modify
$/j2ee/home/config/jms.xml to add the following entries:
<queue
name="queue/MsgReceiverQueue"
location="queue/MsgReceiverQueue">
<description>Message Receiver
Queue</description>
</queue>
<queue
name="queue/MsgSenderQueue"
location="queue/MsgSenderQueue">
<description>Message Sender
Queue</description>
</queue>
<queue
name="queue/DriverQueue" location="queue/DriverQueue">
<description>Driver
Queue</description>
</queue>
<queue-connection-factory
name="ConnectionFactory"
location="ConnectionFactory"/>
Note: bounce OC4J for your modifications
to take effect.
Deploy ns.ear from NS/dist/oc4j directory.
Deploy askServer.ear from ASK/dist/oc4j
directory.
Deploying on JBoss
Creating Queues and ConnectionFactory
Creating required JMS queues for JBoss
Create a file called ns-destinations-service.xml
in JBOSS_HOME/server/default/deploy/jms/
The file should contain the
following:
----- ----- ----[Begin]----- ----- -------
<?xml version="1.0"
encoding="UTF-8"?>
<!-- $Id: $ -->
<!--
| This file defines the Queues and Topics that Notification Service
| uses.
-->
<server>
<mbean
code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=MsgSenderQueue">
<depends optional-attribute-name="DestinationManager">
jboss.mq:service=DestinationManager
</depends>
<depends optional-attribute-name="SecurityManager">
jboss.mq:service=SecurityManager
</depends>
</mbean>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=MsgReceiverQueue">
<depends optional-attribute-name="DestinationManager">
jboss.mq:service=DestinationManager
</depends>
<depends optional-attribute-name="SecurityManager">
jboss.mq:service=SecurityManager
</depends>
</mbean>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=DriverQueue">
<depends optional-attribute-name="DestinationManager">
jboss.mq:service=DestinationManager
</depends>
<depends optional-attribute-name="SecurityManager">
jboss.mq:service=SecurityManager
</depends>
</mbean>
</server>
----- ----- ----[End]----- ----- ---------
Deploying the ear files
Deploying NS on JBoss
- Copy ns.ear
from NS/dist/jboss directory to $JBOSS_HOME/server/default/deploy
- JBoss
server will hot deploy the ear file.
Note: To undeploy NS, delete ns.ear
from
$JBOSS_HOME/server/default/deploy
Deploying askServer on JBoss
Copy askServer.ear from ASK/dist/jboss
directory to $JBOSS_HOME/server/default/deploy
JBoss server will hot deploy the ear file.
Send an instant message or email message to the
account, which is configured,
for NS and
askServer. You should receive the ASK response.
Note: To undeploy askServer,
delete askServer.ear
from $JBOSS_HOME/server/default/deploy
Deploying on IBM Websphere 6.0
Creating Queues and JMS Resources
Creating Bus
- Go to Administration Console of
Websphere IBM Application Server 6
Note: This application has been tested with version 6.0.0.1.
- On the left Navigation tree,
click on 'Service Integration', click "Buses" and then click
"New"
- Set the name of the bus as
"NSBus" and then click "OK".
- Select "NSBus" from the list of
buses to open "NSBus" configuration page.
- Click on "Bus members" from
"Additional Properties" section.
- Click on "Add" button.
- Select the server (e.g.:
<Machine Name>:server1), click "Next" button and finally click
"Finish" button to add the bus member.
- Come back to "NSBus"
configuration page and click on "Destinations" from "Additional
Properties" section.
- Click on "New" to create a
destination on this bus.
- Select destination type as
"Queue", give the identifier as "MsgReceiverDestination" and select the
server name given in step 7 as bus member and finally click "Finish"
button to create the destination.
- Similarly create two other
destinations with identifier "MsgSenderDestination" and
"DriverDestination".
- Click on save button to save
the changes to the master configuration.
Creating JMS Resources
- From the left Navigation tree,
click on "Resources" then click "JMS Providers" and then click "Default
messaging".
- From Default messaging provider
configuration page, click on "JMS queue connection factory" link under
"Connection factories" link.
- Click on "New".
- Give the connection factory
name and the JNDI name both as "ConnectionFactory". Select the bus name as
"NSBus" and click "OK".
- Click on save button to save
the changes to the master configuration.
- Go back to Default
messaging provider configuration page and click the link "JMS queue" under
Destinations section.
- Click on "New" button. This
will take you to queue configuration page.
- Give the name of the queue as
"DriverQueue" and its JNDI name as "queue/DriverQueue". Select the bus
name as "NSBus" and Queue name as "DriverDestination".
- Click "OK" to create this new
JMS queue.
- Similarly create two more
queues.
One queue with Name: "MsgReceiverQueue", JNDI Name:
"queue/MsgReceiverQueue", Bus Name: "NSBus" and Queue name:
"MsgReceiverDestination".
Another with Name: "MsgSenderQueue", JNDI Name: "queue/MsgSenderQueue",
Bus Name: "NSBus" and Queue name: "MsgSenderDestination".
- Click on "Save" button to save
the changes to the master configuration.
- Go back to default messaging
provider configuration page and click on "JMS activation spec" link under
the section Activation specifications.
- Click on "New" Button, which
will take you the new activation specifications configuration properties.
- Give the name of the activation
spec as "MessageDispatcherBeanAS" and JNDI name as
"eis/MessageDispatcherBeanAS". Select the destination type as "Queue".
Give the Destination JNDI name as "queue/MsgReceiverQueue" and select the
Bus name as "NSBus". Click on "OK" to create the activation spec.
- Similarly create another
activation spec with name "MessageForwarderBeanAS", JNDI name
"eis/MessageForwarderBeanAS, Destination type "Queue", Destination JNDI
name "queue/MsgSenderQueue" and Bus name "NSBus".
- Click on "Save" button to save
the changes to the master configuration.
Setting the Websphere Proxy
Websphere xml validation will require DTDs hosted on central
servers, it is important to configure Websphere to use the appropriate proxy if
necessary. The error messages that result from an improperly set proxy
will typically include a NoRouteToHostException.
In order to set the proxy in Websphere, do the following:
- Open the Websphere
Administration Console.
- Click on Servers on
the left. Underneath this, click on "Application Servers". On the page
that loads, click on your server name (which is a link).
- Under "Server
Infrastructure" on the right, click on "Java and Process Management", then
click on "Process Definition".
- Under Additional
Properties, click on "Java Virtual Machine".
- On the resulting page,
under "Additional Properties" click on "Custom Properties"
- Click on
"New" and fill in the resulting page for the first property,
click on the "Save" link when you have finished, then repeat for
the remaining properties.
- http.proxyHost
- http.proxyPort
- http.nonProxyHosts
(this is a set of hosts to ignore separated by a |, e.g. localhost|*.us.foo.com|*.uk.foo.com)
- http.proxySet
(set this to true)
Deploying the ear files
Deploying and running Notification Server
- From the
left navigation tree, click on "Applications" and then click "Install new
Application".
- Click on
"Browse button" and browse to "ns.ear" that is to be deployed present
under NS/dist/websphere, and click on "Next button".
- On the new
screen, check on "Generate default bindings" and click "Next".
- On the new
screen, check on "Deploy enterprise beans" and click "Next".
- This will
bring "Map module to servers" screen, click "Next".
- This will
bring "Provide listener bindings for message-driven beans" screen.
- In the
bindings column of EJB module "MessageReceiverBean", give the Activation
specification JNDI name as "eis/MessageReceiverBeanAS". For EJB module "MailMessageReceiverBean", give the Activation specification JNDI
name as "eis/MailMessageReceiverBeanAS". And for EJB module
"MessageForwarderBean", give the activation specification JNDI name as
"eis/MessageForwarderBeanAS".
- Click next
to go to Map JCA resource references to resources page.
- On this
page, under bindings column of table J2CconnectionFactory for
module "OASW Messaging Transport Storage" specify both name and JNDI name
as "TransStorageFactory".
- Under
the binding column of table J2CconnectionFactory for module XMPP-IM
Driver specify both name and JNDI name as "XMPP-IM-Driver".
- Under the
binding column of table J2CconnectionFactory for module XMPP-IM Driver
Dispatcher, specify the name and the JNDI name both as "XMPPManagedConnectionFactory".
- Under the
binding column of table J2CconnectionFactory for module Email
Driver, specify the name and the JNDI name both as "Email-Driver"
- Under the
binding column of table J2CconnectionFactory for module Email
Driver Dispatcher, specify the name and the JNDI name both as
"EmailManagedConnectionFactory"
- Under the
binding column of table J2CactivationSpec for module XMPP-IM Driver
specify the name as "MessageReceiverBeanAS" and JNDI name as
"eis/MessageReceiverBeanAS".
- Under the binding
column of table J2CactivationSpec for module Email Driver specify
the name as "MailMessageReceiverBeanAS" and JNDI name as
"eis/MailMessageReceiverBeanAS".
- Click on
next button, which will bring "Map resource references to resources" page.
Click on next button without making any changes in this page.
- In case of
any warning click on "Continue" button.
- Finally
click "Finish" button, which will deploy ns.ear.
- From the
left navigation tree go to "Applications" -> "Enterprise Applications"
page. And start the notification server.
Deploying and running ASK Server
- Go to
Administration Console of Websphere IBM Application Server 6.
Note: This application has been tested with version 6.0.0.1.
Login to websphere admin console using any username.
- From the
left navigation tree, click on "Applications" and then click
"Install new Application".
- Click on
"Browse button" and browse to askServer.ear that is to be
deployed (present under ASK/dist/websphere) and click on "Next
button".
- On the new
screen, check the "Generate default bindings" checkbox. Do not
change any other values and click "Next".
- On the new
screen, check the "Pre-compile JSP" checkbox. Make sure that
"Deploy enterprise beans" is checked. Do not make any other
changes and click "Next". This will bring "Map module to
servers" screen, click "Next".
- This will
bring up "Provide options to perform the EJB Deploy" screen,
Click "Next".
- This will
bring up "Provide listener bindings for message-driven beans"
screen.
In this screen, modify the "Activation
Specification JNDI name" for the bean "MessageDispatcherBean" as
"eis/MessageDispatcherBeanAS" and click "Next".
- Keep
clicking "Next" button accepting the default settings for all
the subsequent screens. In case of any warning(s) click
"Continue".
- Finally you reach
the "Summary" page. Click "Finish" to deploy the
"askServer.ear".
This will take you to a new screen, which says
"Installing" which shows the messages as it progresses. Finally the
message "Application ASKServerApplication installed successfully" will
be obtained at the bottom. Below that, click on the "Save to Master
Configuration" link. This takes you another screen on which you should
click "Save" button.
- From the
left navigation tree go to "Applications" -> "Enterprise
Applications" page. Select the "AskServerApplication" and
press "Start" button.
- The message
"Application ASKServerApplication on server server1 and node
<NodeName> started successfully" will be displayed.
If erros are displayed,
please check the log file under:
<WEBSPHERE_INSTALL_DIR>\profiles\default\logs\server1\trace.log
- Send an
instant message or email message to the IM/Email account, which has been
configured for NS and askServer.
- You should
receive the ASK response.
Deploying on BEA Weblogic 9.0
Creating Queues and JMS Modules
Create Persistent Store
- Create a new directory to
create the store (E.g. <BEA_HOME>/nsfilestore).
- Now from the left navigation
menu of the weblogic server administrative console go to
Services->Persistent Stores.
- Click on "Lock to Edit" button
on the left navigation menu. This is will enable the user to create a new
store.
- Now click on "New"->"Create
FileStore" from the "Summary of persistent Stores" page.
- Give a name of the filestore
say "FileStore-0", set the target to "AdminServer", and set the directory
path to the one created in step 1.
- Click finish to create the
store.
- Click "Activate Changes" button
on the left navigation menu.
Create JMS Server
- Click on "Lock & Edit"
Button on the left navigation menu.
- From the left Navigation tree,
click on Services->Messaging->JMS Servers
- Click on "New" button.
- Give a name to JMS server say
"JMSServer-0", set the persistent store to the one created in the above
step (FileStore-0). Click on "Next" button.
- Give the target as
"AdminServer" and click "Finish" to create the JMS server.
- Click "Activate Changes" button
on the left navigation menu.
Create JMS Module
- Click on "Lock & Edit"
Button on the left navigation menu
- From the left Navigation tree,
click on Services->Messaging->JMS Modules.
- Click on "New" button.
- Give a name to the module say
"SystemModule-0". Click on "Next".
- Select "AdminServer" as target
server. Click on "Next".
- Check the check box "Would you
like to add resource" and click "Finish".
- This will bring the
configuration page for "SystemModule-0".
- Click on "New" button to add a
resource. Select type as "Template", Click "Next", Give the name as
"Template-0" and click "OK".
- Now create a queue by clicking
on "New" button again, Set the type as "Queue", Name and JNDI Name as
"queue/DriverQueue", Template as the one created in step 8: "Template-0"
and click "Next".
- Now click on "Create a New
SubDeployment" button. Give a name say "SubDeployment-0" and click "OK".
- Now select the
subdeployment as "SubDeployment-0" and set the target to "JMSServer-0" and
click "Finish".
- Click on New button
again, select the Type as Queue, Set Name and JNDI-Name as
"queue/MsgReceiverQueue", Template as "Template-0" and click "Next". Set
the SubDeployments as "SubDeployment-0", Targets as "JMSServer-0" and
click "Finish".
- Click on New button
again, select the Type as Queue, Set Name and JNDI-Name as
"queue/MsgSenderQueue", Template as "Template-0" and click "Next". Set the
SubDeployments as "SubDeployment-0", Targets as "JMSServer-0" and click
"Finish".
- Click on New button
again, select the Type as "Connection Factory", Set Name and JNDI Name as
"ConnectionFactory", Select the subdeployment as "Subdeployment-0". Set
the target to "JMSServer-0". Do not check on "AdminServer". Click Finish.
- Click "Activate Changes" button
on the left navigation menu
Deploying the ear files
Deploying and running Notification Server
- Click on "Lock & Edit"
Button on the left navigation menu
- Click on "Deployment" from the
left navigation tree.
- Click on "Install" button. And
browse to the location where weblogic ns.ear file is located.
(NS/dist/weblogic). Click Next.
- Select "Install this deployment
as an application" and Click on "Next" button. Then click "Finish" button.
- Click on "Activate Changes"
button on the left navigation menu.
- Now select ns and click
"Start->Servicing all requests". This will start the notification
server.
Deploying and running ASK Server
- Login
to the Weblogic Admin Console.
- Click
on "Lock and Edit"
- Click
"Deployments" then click "Install".
- Upload
the askServer.ear file from ASK/dist/weblogic location and click on
"Next".
- Select
"Install this as an Application" and click "Next"
- Click
"Finish" on the next screen.
- Click
on "Activate Changes" green button on the left hand of the
screen.
- Select
the askServer and then go to "Start" drop down, click
"Servicing all requests".
- This
will take you to the "Start deployments" screen. Press on the
"Yes" button.
- After
this, the askServer starts running and the status will be "Start
running".
- Now
send an instant message or email message to the account, which is
configured,
in NS and askServer. You should receive
the ASK response.