Olá estou usando o Tomcat 6 ,
e estou tentando pendurar um DataSource na JNDI
try{
Context newContext = new InitialContext();
newContext.bind( dataSourceWrappedID, wrappedDs );
newContext.close();
}catch(NameAlreadyBoundException nabe){
// ok..
}catch(NamingException ne){
if ( log.isWarnEnabled() ){
log.warn("Ocorreu um erro inexperado:", ne);
}
}
Vejam a Exception
WARNING: Ocorreu um erro inexperado:
javax.naming.NamingException: Context is read only
at org.apache.naming.NamingContext.checkWritable(NamingContext.java:903)
at org.apache.naming.NamingContext.bind(NamingContext.java:831)
at org.apache.naming.NamingContext.bind(NamingContext.java:171)
at org.apache.naming.NamingContext.bind(NamingContext.java:187)
at org.apache.naming.SelectorContext.bind(SelectorContext.java:171)
at javax.naming.InitialContext.bind(InitialContext.java:400)
Porque o pessoal aqui criou um Wrapper de Datasource então eles fazem o seguinte , pegam o DataSource da JNDI , e criam um Wrapper em cima dele e depois disso bindam novamente na JNDI. Isso era feito “normalmente” usando o JBoss…
DS = JavaDS
WDS = JavaWrappedDS
Sim claro mas porque ele é read only ?
Nao tem como eu dar um chmod 777 nele ? :lol:
grant {
// Required for JNDI lookup of named JDBC DataSource's and
// javamail named MimePart DataSource used to send mail
permission java.util.PropertyPermission "java.home", "read,write";
permission java.util.PropertyPermission "java.naming.*", "read,write";
permission java.util.PropertyPermission "javax.sql.*", "read,write";
// OS Specific properties to allow read access
// Continuou com as propriedades default..
.....
}
Porem o erro continua…
WARNING: Ocorreu um erro inexperado:
javax.naming.NamingException: Context is read only
at org.apache.naming.NamingContext.checkWritable(NamingContext.java:903)
at org.apache.naming.NamingContext.bind(NamingContext.java:831)
at org.apache.naming.NamingContext.bind(NamingContext.java:171)
at org.apache.naming.NamingContext.bind(NamingContext.java:187)
at org.apache.naming.SelectorContext.bind(SelectorContext.java:171)
at javax.naming.InitialContext.bind(InitialContext.java:400)