Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Issue with deploying TDI as a Windows Service

269 views
Skip to first unread message

magnu...@gmail.com

unread,
Jan 8, 2015, 7:52:18 AM1/8/15
to
Hello,

Im new to TDI and are currently having some issues deploying a TDI Windows service.

The TDI service is a Just in time provisioning AL that is initiated by a TFIM request. I have tried to pin down the issue but it seems I cannot find the root cause. Could somebody advise where to start or how to fix the instance issue as I dont have any other TDI service running.

I get the following error from TFIM:

com.tivoli.am.fim.trustserver.sts.STSModuleException: FBTSTS102E The assembly line represented by [ Hostname: W569 Port: 1109 ConfigurationFilename: Folksam-JIT-TAMeb.xml AssemblyLineName:Folksam-JIT-TAMeb] cannot be loaded. at


From the log file within the TDI Service folder i get the following error:

2015-01-08 11:13:50,472 INFO [com.ibm.di.api] - CTGDKD314I Remote session created with local Identity.
2015-01-08 11:13:50,519 ERROR [com.ibm.di.api] - CTGDKD262E Could not start Config Instance.
java.lang.Exception: CTGDIS197E Config instance with name 'test' is already running.
at com.ibm.di.server.Log.exception(Log.java:1207)
at com.ibm.di.server.RS.createConfigInstance(RS.java:3110)
at com.ibm.di.server.RS.startServer(RS.java:3082)
at com.ibm.di.api.local.impl.SessionImpl.startConfigInstance(SessionImpl.java:856)
at com.ibm.di.api.local.impl.SessionImpl.startConfigInstance(SessionImpl.java:908)
at com.ibm.di.api.local.impl.SessionImpl.startConfigInstance(SessionImpl.java:252)
at com.ibm.di.api.local.impl.SessionImpl.startConfigInstance(SessionImpl.java:243)
at com.ibm.di.api.remote.impl.SessionImpl.startConfigInstance(SessionImpl.java:195)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
at sun.rmi.transport.Transport$1.run(Transport.java:171)
at java.security.AccessController.doPrivileged(AccessController.java:284)
at sun.rmi.transport.Transport.serviceCall(Transport.java:167)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:547)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:802)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:661)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
at java.lang.Thread.run(Thread.java:736)

Thanks in advance

Nagesh Bhagwat

unread,
Jan 9, 2015, 6:02:04 AM1/9/15
to
Looks like config is already loaded & running so make sure that you don't have any services running which uses same config.

You can manually stop and start the IBM Tivoli Directory Integrator service from the Windows Services panel
OR
The IBM Tivoli Directory Integrator service automatically starts the IBM Tivoli Directory Integrator at system boot so try rebooting machine once after you install the service.

magnu...@gmail.com

unread,
Jan 9, 2015, 10:01:24 AM1/9/15
to
Thanks for the reply Nagesh,

Unfortunately the advices you gave doesnt work for me. I have verified the services running on the machine and also disabled all other TDI services in order to minimize the troubleshooting efforts.

The reboot of the server didnt help either so im kind of stuck right now.

yn2000

unread,
Jan 9, 2015, 1:08:55 PM1/9/15
to
More info is needed to understand the issue, such as where Folksam-JIT-TAMeb.xml come from?
If Folksam-JIT-TAMeb.xml in sent by TFIM server, then you need to configure the Windows service using: cmdoptions=-d (in ibmdiservice.props)
If Folksam-JIT-TAMeb.xml is executed locally from TDI server, then the ibmdiservice.props is configured to run it and there should not using cmdoptions=-d.

The error log: "Config instance with name 'test' is already running." maybe caused by a different issue, because there is the word 'test', instead of Folksam-JIT-TAMeb, in it. Please note that when you open TDI Config Editor, you are also waking up another TDI service, where the port (1109) may collide with the Windows services that you are trying to run.

Rgds. YN.

magnu...@gmail.com

unread,
Jan 12, 2015, 7:30:35 AM1/12/15
to
Thanks YN2000.

The xml file is located locally on the TDI server and I have verified with older versions of the ibmdiservice.props and they have started the instance with the -d command.

the test config is the same, I masked the name of the AL to test but seemed I didnt mask all of the pasted information.

However, I couldnt get the service to work, the same error was returned from the log file.

yn2000

unread,
Jan 12, 2015, 9:44:18 AM1/12/15
to
Maybe it would be helpful if you post the ibmdiservice.props here, so that we can check, as second eyes, whether there is typo. For example: if the xml file is located locally, it is better not to use -d command, because if you use -d command, then you might need to configure AutoStart, although the log says something else. (Note: I am conflicting my own troubleshooting logic, because I need more information to process). By the way, when (which event) did you receive the "Could not start Config Instance" error message? At the time you start the Windows service? Or At the time you send TFIM request?
Also, because this is local xml, can you try running it from TDI Config Editor (not from Windows service) to make sure that the AL itself is clean from error?

Rgds. YN.

magnu...@gmail.com

unread,
Jan 12, 2015, 11:09:05 AM1/12/15
to
Thanks for the reply yn2000.

I have running the AL in the TDI Config Editor and it runs without any errors.

The error message appears in the ibmdi.log when TFIM sends a request to the TDI AL.

The ibmdiservice.props log looks like this:

path=C:\Program Files\IBM\TDI\V7.1.1\jvm\jre\bin;C:\Program Files\IBM\TDI\V7.1.1\libs;
ibmdiroot=C:\Program Files\IBM\TDI\V7.1.1
jvmRoot=C:\Program Files\IBM\TDI\V7.1.1\jvm
configfile="C:\ISAM_TDI_Services\timsol-FolksamJIT\configs\Folksam-JIT-TAMeb.xml"
assemblylines=Folksam-JIT-TAMeb
cmdoptions=-d
jvmcmdoptions=
debug=false
controlledshutdown=false
servicename=FolksamJIT
autostart=true

Regards
Magnus

yn2000

unread,
Jan 12, 2015, 12:30:12 PM1/12/15
to
Please run/try either test cases. Hopefully one of these config works for you.
Config/Test #1: Remove autostart=true
Config/Test #2: Remove autostart=true and cmdoptions=-d

Rgds. YN.

magnu...@gmail.com

unread,
Jan 13, 2015, 7:45:20 AM1/13/15
to
Have tried the different configuration options you described but I get the same error after I restarted the Windows service with autostart=false and without the cmdoptions=-d.

This is quite frustrating but I appreciate your help here!

Regards
Magnus

yn2000

unread,
Jan 13, 2015, 12:39:03 PM1/13/15
to
I hear you.
When it is working on TDI Config Editor, it should be so easy to migrate to Windows service. I believe everyone here has done it. Now, how could be not working in your environment?

We covered...
- No port conflict
- No other service is running
- TDI Config Editor is also not running when Windows service is running
- With or without autostart (considering we have no clue on the AL)
- With or without daemon/service (considering we have no clue on TFIM req.)
- All needed files from win32_service folder in copied (that is in manual)

Maybe you find more clue from ibmdi.log (if needed increase the log level), when you start the Windows service, before you send TFIM request.

Rgds. YN.

yn2000

unread,
Jan 13, 2015, 12:49:27 PM1/13/15
to
Oh... almost forget. A faster solution could be just open an IBM PMR, so that someone can take a look in your environment (or maybe configuration setting or maybe catching a typo error) in more detail.

Rgds. YN.

magnu...@gmail.com

unread,
Jan 14, 2015, 11:02:49 AM1/14/15
to
On Tuesday, 13 January 2015 18:49:27 UTC+1, yn2000 wrote:
> Oh... almost forget. A faster solution could be just open an IBM PMR, so that someone can take a look in your environment (or maybe configuration setting or maybe catching a typo error) in more detail.
>
> Rgds. YN.

Thanks YN.

Will probably do that in case I dont progress in anytime soon.

Regards
Magnus

magnu...@gmail.com

unread,
Feb 12, 2015, 7:23:31 AM2/12/15
to
Hi,

Just wanted to do a followup on this thread. We raised a PMR and got the following information, to downgrade to TDI 7.1. See the answer below:

Problem(Abstract)
error FBTSTS102E when ITFIM trust chain is contacting ITDI
Symptom
When ITFIM 6.2.3 ( that is just a different comp-id for ITFIM 6.2.2 FP12 ) is trying to invoke an ITDI 7.1.1 assembly line the following exception is reported in ITFIM trace :
[1/18/15 16:59:18:578 EET] 000000a7 TDIServer < com.tivoli.am.fim.trustserver.sts.modules.tdi.TDIServer invalidate RETURN [1/18/15 16:59:18:579 EET] 000000a7 DirectoryInte I com.tivoli.am.fim.trustserver.sts.modules.tdi.DirectoryIntegratorConfigurationImpl getALH com.tivoli.am.fim.trustserver.sts.STSModuleException: FBTSTS102E The assembly line represented by [ Hostname: localhost Port: 1099 ConfigurationFilename: JIT_Provisioning AssemblyLineName:JIT_Provisioning] cannot be loaded. at com.tivoli.am.fim.trustserver.sts.modules.tdi.DirectoryIntegratorConfigurationImpl.getALH(DirectoryIntegratorConfigurationImpl.java:214) at com.tivoli.am.fim.trustserver.sts.modules.DirectoryIntegratorSTSModule.map(DirectoryIntegratorSTSModule.java:255) at com.tivoli.am.fim.trustserver.sts.modules.DirectoryIntegratorSTSModule.invoke(DirectoryIntegratorSTSModule.java:140)
...
...
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864) Caused by: java.rmi.UnmarshalException: error unmarshalling return; nested exception is: java.lang.ClassNotFoundException: com.ibm.di.config.base.ValidatorConfigImpl (no security manager: RMI class loader disabled) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:190) at com.ibm.di.api.remote.impl.ConfigInstanceImpl_Stub.getConfiguration(ConfigInstanceImpl_Stub.java:334)


Cause
ITDI 7.1.1 is not support yet to work with ITFIM 6.2.3 ( aka 6.2.2 FP 12 ) , despite being wrongly reported in the Clarity reports.

Resolving the problem
Downgrade ITDI to 7.1
0 new messages