[Security & JAAS/JBoss] - Re: writing new LoginModul - unable to replace Principal ??
by info@connext.co.za
Good Day,
There are two parts this:
1. Customise the Principal class
2. Retrieving the CallingPrincipal
1. Customise the Principal class
By default the LoginModules in JBoss make use of the SimplePrincipal class to denote principals in the system. It is easy to change the principal that the LoginModules create by setting the principalClass of the LDAPLoginModule in login-conf.xml
Example
<module-option name="principalClass">za.co.connext.jboss.LDAPPrincipal</module-option>
Just remember that the Principal class needs a constructor that takes the name of the user as a parameter.
2. Retrieving the CallingPrincipal
To enable to session context to retrieve the caller principal, the login module should save the information in the Subject.
The easiest way is to create a SimpleGroup with the name CallerPrincipal and add your principal object to it. Add the CallerPrincipal group to the principals collection of the subject. You should check the principals collection first to determine if the CallerPrincipal group was added by a LoginModule further up the chain. All of this should be done in the commit method of the LoginModule. In my implementations when using JBoss is to always to do a super.commit() before adding my custom logic in the commit method.
Hope this helps.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3971262#3971262
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3971262
19 years, 7 months
[JBoss jBPM] - Oracle exception deploying process
by mteira
Hello.
I'm trying to setup jBPM inside JBoss 4.0.4 GA. Once I've deployed the jbpm.ear (from CVS) I tried to deploy a process from the Graphic Designer. I'm getting an oracle exception while trying to identify older versions of the process trying to be deployed. What could be the cause? The select shown works correctly into an SQLPlus session.
Thanks.
14:39:29,605 DEBUG [JDBCExceptionReporter] could not execute query [select processdef0_.ID_ as ID1_4_, processdef0_.NAME_ as NAME2_4_, processdef0_.VERSION_ as VERSION3_4_, processdef0_.ISTERMINATIONIMPLICIT_ as ISTERMIN4_4_, processdef0_.STARTSTATE_ as STARTSTATE5_4_ from JBPM_PROCESSDEFINITION processdef0_ where processdef0_.NAME_=? order by processdef0_.VERSION_ desc]
| java.sql.SQLException: ORA-00923: FROM keyword not found where expected
|
| at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
| at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2355)
| at oracle.jdbc.oci8.OCIDBAccess.parseExecuteDescribe(OCIDBAccess.java:1274)
| at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2516)
| at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2850)
| at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
| at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:537)
| at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:236)
| at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
| at org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
| at org.hibernate.loader.Loader.doQuery(Loader.java:662)
| at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
| at org.hibernate.loader.Loader.doList(Loader.java:2145)
| at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
| at org.hibernate.loader.Loader.list(Loader.java:2024)
| at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:392)
| at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:333)
| at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
| at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
| at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
| at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:756)
| at org.jbpm.db.GraphSession.findLatestProcessDefinition(GraphSession.java:153)
| at org.jbpm.db.GraphSession.deployProcessDefinition(GraphSession.java:67)
| at org.jbpm.JbpmContext.deployProcessDefinition(JbpmContext.java:173)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.doDeployArchive(ProcessUploadServlet.java:155)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.handleRequest(ProcessUploadServlet.java:103)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.service(ProcessUploadServlet.java:63)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| 14:39:29,608 WARN [JDBCExceptionReporter] SQL Error: 923, SQLState: 42000
| 14:39:29,608 ERROR [JDBCExceptionReporter] ORA-00923: FROM keyword not found where expected
|
| 14:39:29,827 ERROR [STDERR] org.hibernate.exception.SQLGrammarException: could not execute query
| at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
| at org.hibernate.loader.Loader.doList(Loader.java:2148)
| at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
| at org.hibernate.loader.Loader.list(Loader.java:2024)
| at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:392)
| at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:333)
| at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
| at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
| at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
| at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:756)
| at org.jbpm.db.GraphSession.findLatestProcessDefinition(GraphSession.java:153)
| at org.jbpm.db.GraphSession.deployProcessDefinition(GraphSession.java:67)
| at org.jbpm.JbpmContext.deployProcessDefinition(JbpmContext.java:173)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.doDeployArchive(ProcessUploadServlet.java:155)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.handleRequest(ProcessUploadServlet.java:103)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.service(ProcessUploadServlet.java:63)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: java.sql.SQLException: ORA-00923: FROM keyword not found where expected
|
| at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
| at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2355)
| at oracle.jdbc.oci8.OCIDBAccess.parseExecuteDescribe(OCIDBAccess.java:1274)
| at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2516)
| at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2850)
| at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
| at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:537)
| at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:236)
| at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
| at org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
| at org.hibernate.loader.Loader.doQuery(Loader.java:662)
| at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
| at org.hibernate.loader.Loader.doList(Loader.java:2145)
| ... 37 more
| 14:39:29,829 ERROR [GraphSession] org.hibernate.exception.SQLGrammarException: could not execute query
| 14:39:29,829 DEBUG [JbpmContext] closing JbpmContext
| 14:39:29,831 DEBUG [Services] closing service 'persistence': org.jbpm.persistence.db.DbPersistenceService@dd7404
| 14:39:29,833 DEBUG [DbPersistenceService] committing hibernate transaction
| 14:39:29,833 DEBUG [JTATransaction] commit
| 14:39:29,835 DEBUG [JTATransaction] Committed JTA UserTransaction
| 14:39:29,836 DEBUG [DbPersistenceService] closing hibernate session
| 14:39:29,836 DEBUG [Services] closing service 'tx': org.jbpm.tx.TxService@1606bf5
| 14:39:29,837 ERROR [[ProcessUploadServlet]] Servlet.service() for servlet ProcessUploadServlet threw exception
| org.jbpm.JbpmException: couldn't find process definition 'Forker'
| at org.jbpm.db.GraphSession.findLatestProcessDefinition(GraphSession.java:170)
| at org.jbpm.db.GraphSession.deployProcessDefinition(GraphSession.java:67)
| at org.jbpm.JbpmContext.deployProcessDefinition(JbpmContext.java:173)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.doDeployArchive(ProcessUploadServlet.java:155)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.handleRequest(ProcessUploadServlet.java:103)
| at org.jbpm.webapp.servlet.ProcessUploadServlet.service(ProcessUploadServlet.java:63)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.hibernate.exception.SQLGrammarException: could not execute query
| at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
| at org.hibernate.loader.Loader.doList(Loader.java:2148)
| at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
| at org.hibernate.loader.Loader.list(Loader.java:2024)
| at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:392)
| at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:333)
| at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
| at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
| at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
| at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:756)
| at org.jbpm.db.GraphSession.findLatestProcessDefinition(GraphSession.java:153)
| ... 28 more
| Caused by: java.sql.SQLException: ORA-00923: FROM keyword not found where expected
|
| at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
| at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2355)
| at oracle.jdbc.oci8.OCIDBAccess.parseExecuteDescribe(OCIDBAccess.java:1274)
| at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2516)
| at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2850)
| at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
| at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:537)
| at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:236)
| at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
| at org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
| at org.hibernate.loader.Loader.doQuery(Loader.java:662)
| at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
| at org.hibernate.loader.Loader.doList(Loader.java:2145)
| ... 37 more
| 14:46:03,640 DEBUG [IdleRemover] run: IdleRemover notifying pools, interval: 450000
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3971260#3971260
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3971260
19 years, 7 months
[The Lizzard's corner] - Re: Are Open Source Software Tools Better than Commercial?
by jwenting
There doesn't have to be a problem, yet I do in my own experience notice that those OS tools that have (large) corporations behind them are generally far superior to those that don't.
Not just stability (will it be actively maintained in a few months and will there be support when and if I need it) but overall software quality and especially documentation quality are a lot better when there's corporate oversight rather than a bunch of hobbyists (who might well hold jobs writing other software) working together.
Because let's face it, maintenance programming and documentation writing are among our least favorite activities as programmers and when there's noone telling us to do it those activities tend to get sidestepped or rushed.
And there's the crucial fault with many OS projects that don't have corporate sponsorship where contributors are making a living writing that stuff for those sponsors (and are thus told to do that documentation and maintenance or loose that income), they tend to add a lot of shiny new features without serious commitment to stabilising what's already there (and documenting it).
Of course there are also poorly documented and maintained non-OS products, but the percentage is lower.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3971257#3971257
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3971257
19 years, 7 months