Skip to main content
Announcements
SYSTEM MAINTENANCE: Thurs., Sept. 19, 1 AM ET, Platform will be unavailable for approx. 60 minutes.
cancel
Showing results for 
Search instead for 
Did you mean: 
davidferguson
Contributor III
Contributor III

Location of the loaded locator.properties file used when running a Job/Route in Talend Studio

Hi there,

 

I'm prototyping REST Jobs and Routes within ESB Studio (Subscription 6.4.1) and using the "Use Service Locator" option in cREST and tRESTRequest components. When I run the Job/Route I can get the following error:

 

SEVERE: Failed to execute an request to Service Locator.
org.talend.esb.servicelocator.client.ServiceLocatorException: Service Locator server requires authentication, but no user is defined.
	at org.talend.esb.servicelocator.client.internal.zk.ZKBackend.authenticate(ZKBackend.java:343)
	at org.talend.esb.servicelocator.client.internal.zk.ZKBackend.access$200(ZKBackend.java:25)
	at org.talend.esb.servicelocator.client.internal.zk.ZKBackend$WatcherImpl.process(ZKBackend.java:401)
	at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:522)
	at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:498)

I have an instance of Zookeeper running on localhost:2181 but it's set up with a username and password, so obviously I want to define the authentication.name & authentication.password properties so it can register the service.

 

 

According to the logs the following places are searched for the locator.properties file:

 

[INFO ]: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer - Loading properties file from URL [file:${spring.config.location}/locator.properties]
[WARN ]: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer - Could not load properties from URL [file:${spring.config.location}/locator.properties]: ${spring.config.location}\locator.properties (The system cannot find the path specified)
[INFO ]: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer - Loading properties file from class path resource [config/locator.properties]
[WARN ]: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer - Could not load properties from class path resource [config/locator.properties]: class path resource [config/locator.properties] cannot be opened because it does not exist
[INFO ]: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer - Loading properties file from class path resource [locator.properties]

Eventually a locator.properties file is loaded from the class path resource - does anyone know where the Talend Studio default class path location is?

 

 

I found locator.properties files under the following paths and updated them to include the correct username and password:

  • [Studio-Workspace]\.Java\src\main\resources\locator.properties
  • [Studio-Workspace]\.Java\target\classes\locator.properties
  • [Talend-Install-Directory]\studio\configuration\org.eclipse.osgi\897\0\.cp\esb\locator.properties

I've restarted the Studio after updating the files, but there is no change - I still get the error about no user being defined.

 

Anyone have any clues as to what I'm doing wrong?

 

 

 

Labels (5)
2 Replies
Anonymous
Not applicable

Hello,

Could you please let us know if this jira issue:https://jira.talendforge.org/browse/TESB-7330 is what you are looking for?

Best regards

Sabrina

davidferguson
Contributor III
Contributor III
Author

Hi Sabrina,

 

the exception that is thrown is certainly the same:

org.talend.esb.servicelocator.client.ServiceLocatorException: Service Locator server requires authentication, but no user is defined.

The cause however - is different, unless the Studio is trying to use the tesb-locator-rest-service (which is not installed in my Runtime).

 

As far as I see my case is independent of the tesb-locator-rest-service - I'm just using the cREST and tRESTRequest components in the Studio with the "Use Service Locator" checkbox activated and the local Zookeeper configuration (within the Runtime at localhost:2181) is set to use authentication.

 

I don't want to attach a Zip of the Route to the forum (the talend.project has sentitive info in it), but I gave Support a copy. If you want to try reproduce, here're a few screenshots:

 

0683p000009M0T3.png0683p000009M0aH.png

 

 

- Activate authentication for the Zookeeper instance running on localhost:2181.

- Run the Route in the Studio.

 

The exception should appear.

 

Thanks,

 

David.