Author |
Message
|
anuppc |
Posted: Sun Nov 14, 2004 9:29 am Post subject: AuthenticationExit on AIX[SOLVED] |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
hi all,
I have an wf client using authentication exit to logon to wf server. The exit works on intel box. im trying to use the same exit and deploy it on a AIX box.
It did work initially but some how after restart the authentication exit fails to work correctly. It throws StringArrayIndexOutOfBounds exception... The server starts up correctly... when i invoke logon4... this exception is thrown... it actually calls... the authenticate() method as shown in the IBM sample. The method call fails.....as i dont see print statements written inside the authenticate method...
Can someone tell me what could be wrong here....?
thanks _________________ BlowFish |
|
Back to top |
|
 |
vennela |
Posted: Mon Nov 15, 2004 7:08 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Run the application in the foreground and you will be able to see the System.out.println statements there. |
|
Back to top |
|
 |
anuppc |
Posted: Mon Nov 15, 2004 8:28 am Post subject: |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
Hi Vennela,
I do see the trace... but the system.out statement in the authenticationexit class is not shown .........
Here is the trace .......
Error starting triggered application.
__________________________________________________
Waiting for a trigger message
FMC10200I Execution server for system FMCSYS started.
FMC10200I Execution server for system FMCSYS started.
FMC10400I Scheduling server for system group FMCGRP started in system FMCSYS.
FMC10200I Execution server for system FMCSYS started.
FMC10400I Scheduling server for system group FMCGRP started in system FMCSYS.
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java(Compiled Code))
at com.ibm.workflow.java.exit.Authentication.authenticate(Unknown Source)
FMC31050E An error has occurred which has terminated processing.
Regards
Anup _________________ BlowFish |
|
Back to top |
|
 |
anuppc |
Posted: Mon Nov 15, 2004 8:31 am Post subject: |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
Hi Vennela,
This is the trace for the same code i get on intel box....
----------------------------------------------------------------------------
FMC10110I Administration server for system FMCSYS started.
FMC10300I Cleanup server for system group FMCGRP started in system FMCSYS.
FMC10310I Cleanup server for system group FMCSYS stopped.
Exit called!
ExitParam.dump (11 keys):
userCredentials = ¼φ ♣sr %ca.galaxia.security.CredentialsObject╛ú╥┴ ÜX╙☻ ♦L
‼authorizationMethodt ↕Ljava/lang/String;L
encryptionq ~ ☺passwordq ~ ☺Lusernameq ~ ☺xpt q ~ ♥q ~ ♥t wfadmin (174 bytes)
phaseNumber = 0
modlevel = 0
exitCorrelID = 0
reasonCode = 0
version = 3
mqwfUserID =
userName = admin
exitResult = NotSet
release = 4
exitParameterListVersion = 2
[Authentication] Creating AuthExit....
Thu Nov 04 08:57:41 EST 2004 : Authenticated using userid wfadmin
userName: WFADMIN
mqwfUserID: WFADMIN
reasonCode: 0
exitResult: LogonAccepted
Regards
Anup _________________ BlowFish |
|
Back to top |
|
 |
vennela |
Posted: Mon Nov 15, 2004 8:34 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
What you are saying is the auth exit works on Windows and not on AIX?
You should verify java version and workflow version on both the boxes then? |
|
Back to top |
|
 |
anuppc |
Posted: Mon Nov 15, 2004 9:28 am Post subject: |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
NOTE: It is a known problem, that a MQWF AuthenticationExit written in Java does not work with
SUN JDKs 1.3.1 prior to service level 4!
I saw this note in the authentication exit sample code....
This is the snippet of batch file which runs WFServer
echo "Starting main process"
export WORKFLOW_HOME=/usr/lpp/fmc/
export JAVA_HOME=/usr/WebSphere/AppServer/java
export MQWF_CFG_NAME=FMC
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export LIBPATH=/usr/lib:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$JAVA_HOME/jre/bin/classic:$LIBPATH
for i in LCAJGalFmcExit.jar
do
export CLASSPATH=$WORKFLOW_HOME/bin/java3400/$i:$CLASSPATH
done
for i in fmcohcli.jar fmcoutil.jar fmcospea.jar fmcospea.jar
do
export CLASSPATH=/usr/lpp/fmc/bin/$i:$CLASSPATH
done
fmczchk -C inst:m,RTAuthenticationExitTypeServer,JAVA -y FMC
cd /tmp
nohup fmcamain -cy &
The webpshere java version is
java version "1.3.1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1)
Classic VM (build 1.3.1, J2RE 1.3.1 IBM AIX build ca131-20030618 (JIT enabled: jitc))
Regards
Anup _________________ BlowFish |
|
Back to top |
|
 |
vennela |
Posted: Mon Nov 15, 2004 9:38 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Not that it matters but what is
Why do you need -c and why do you need -y without a config Id.
I never give -c to start workflow on UNIX platforms.
Is your workflow server started OK.
Can you logon to workflow using fmcautil?
If you can keep fmcautil running and then try to issue logon3 or logon4 from a workflow client. Maybe your println statements will show up there. |
|
Back to top |
|
 |
anuppc |
Posted: Wed Nov 17, 2004 12:29 pm Post subject: |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
hi vennela,
still stuck with same issue... wonder what could have gone wrong coz it did work b4....
As you see below, i'm able to connect using fmcautil.....
--------------------------------------------------------------------------
System group name : [FMCGRP] FMCGRP
System name : [FMCSYS] FMCSYS
Userid : [WFADMIN] admin
Password : [********]
= FMC16110I Receive thread for userID 'ADMIN' at system 'FMCSYS' started.
- FMC16301I UserID 'ADMIN' connected to system 'FMCSYS'.
FMC15040I System Commands Menu:
c ... Connect
i ... Info
d ... Shutdown
q ... Query
w ... Wait
x ... Exit System Commands Menu
= FMC16120I Receive thread for userID 'ADMIN' at system 'FMCSYS' ended.
...........................................................................................................
After using issuing logon4() the same error is thrown...
FMC10200I Execution server for system FMCSYS started.
FMC10400I Scheduling server for system group FMCGRP started in system FMCSYS.
FMC10200I Execution server for system FMCSYS started.
FMC10400I Scheduling server for system group FMCGRP started in system FMCSYS.
FMC10200I Execution server for system FMCSYS started.
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:2044)
at com.ibm.workflow.java.exit.Authentication.authenticate(Unknown Source)
FMC31050E An error has occurred which has terminated processing.
....................................................................................................
The fmcautil command timesout after this...
Any clue whats happening here?... looks like the execution server went down!
-Anup _________________ BlowFish |
|
Back to top |
|
 |
hos |
Posted: Thu Nov 18, 2004 12:00 am Post subject: |
|
|
Chevalier
Joined: 03 Feb 2002 Posts: 470
|
Hi,
maybe you are calling an authentication exit implementation that you do not want to call. Be sure that you have the correct authentication exit on top in your classpath. For instance fmcohcli.jar comes with a dummy exit implementation. Just do a print statement without any susbsting handling as the first statement in the authenticate() method of your exit implementation. I would recommend to implement the exit in a separate standalone jar file and provide this to the fmcamain environment. |
|
Back to top |
|
 |
anuppc |
Posted: Thu Nov 18, 2004 6:28 am Post subject: |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
|
Back to top |
|
 |
anuppc |
Posted: Thu Nov 18, 2004 6:38 am Post subject: [Solved] |
|
|
 Voyager
Joined: 22 Oct 2002 Posts: 93 Location: Montreal
|
To be more precise, include all authenticationexit classes in a single jar and include just that jar in the classpath....
earlier i had a bunch of jars included in the classpath.... like fmcohcli.jar, fmcoutil.jar....
- Anup _________________ BlowFish |
|
Back to top |
|
 |
|