Since I’ve spent a day breaking through this mess, I’d share my way of getting ODI to work with XE as a repository.
ODI repository creation is sucessfull, but after that Topology Manager and all other ODI modules won’t work, throwing “ORA-12705: invalid or unknown NLS parameter value specified” while connecting to XE.
There are 3 java connections to repository in ODI:
1) For Oracle Data Integrator Modules
Unfotunately, I couldn’t get ODI to work with correct NLS by changing odiparams.bat as they recommend on Metalink, but downloading latest jdbc driver from Oracle and removing old ones (physically deleting ;)) from \drivers folder helped with this part.
2) For ODI Agent
After trying in vain with adding “-Duser.language=en” “-Duser.region=US” to odiparams, I’ve created a new wrapper configuration file (stored in ODI_HOME\tools\wrapper\conf) by copying snpsagent.conf to and adding this options to line
wrapper.java.additional.1=-Djava.security.policy=server.policy
so it read
wrapper.java.additional.1=-Djava.security.policy=server.policy -Duser.language=en -Duser.region=US
reinstalling agent with the new wrapper conf file (you explicitly run ‘agentservice -i -s agent_name 20910 new_wrapper’) worked.
3) For Metadata Navigator
I’ve used Apache Tomcat as a Metadata Navigator container. Setting additional java options (the very same ‘-Duser.language=en -Duser.region=US’) for tomcat solved this one.
See related Metalink Note: 471749.1