You're confusing me. ;-)  What's the actual problem?  Last time you said the
tables hadn't been created now you're saying the dataource isn't working.




On Wed, Jun 24, 2009 at 9:44 AM, Andrew Tillinghast
<[email protected]>wrote:

> I added that line, and I changed the JTA reference so that it's a
> datasource, right now the CAS service starts without any errors and it
> correctly authenticates the user, when the user successfully logs in however
> CAS errors out with:
>
> 09:36:00,146 ERROR [[cas]] Servlet.service() for servlet cas threw
> exception
> java.lang.IllegalArgumentException: Unknown entity:
> org.jasig.cas.ticket.TicketGrantingTicketImpl
>  at
> org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:223)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:358)
>  at $Proxy298.persist(Unknown Source)
> at org.springframework.orm.jpa.JpaTemplate$5.doInJpa(JpaTemplate.java:268)
> at org.springframework.orm.jpa.JpaTemplate.execute(JpaTemplate.java:184)
>  at org.springframework.orm.jpa.JpaTemplate.persist(JpaTemplate.java:266)
> at
> org.jasig.cas.ticket.registry.JpaTicketRegistry.addTicket(JpaTicketRegistry.java:48)
>  at
> org.jasig.cas.CentralAuthenticationServiceImpl.createTicketGrantingTicket(CentralAuthenticationServiceImpl.java:425)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>  at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>  at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
> ....
>
> Here is my ticketRegistry,xml now:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans";
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>        xmlns:p="http://www.springframework.org/schema/p";
>        xmlns:tx="http://www.springframework.org/schema/tx";
>        xmlns:jee="http://www.springframework.org/schema/jee";
>        xsi:schemaLocation="http://www.springframework.org/schema/beans
>    http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
>        http://www.springframework.org/schema/tx
>    http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
>        http://www.springframework.org/schema/jee
>    http://www.springframework.org/schema/tx/spring-jee-2.0.xsd";>
>  <!-- JPA attached to jboss persistence unit -->
>     <bean id="ticketRegistry"
> class="org.jasig.cas.ticket.registry.JpaTicketRegistry">
>      <constructor-arg index="0" ref="entityManagerFactory" />
>     </bean>
>  <bean id="entityManagerFactory"
> class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
>        <property name="dataSource" ref="dataSource"/>
>    <property name="jpaVendorAdapter">
> <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
>  <property name="showSql" value="true"/>
> <property name="generateDdl" value="true" />
>  <property name="database" value="SQL_SERVER"/>
> </bean>
> </property>
>  <property name="jpaProperties">
> <props>
> <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
>  <prop key="hibernate.hbm2ddl.auto">update</prop>
> <prop
> key="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</prop>
>  <prop key="hibernate.transaction.auto_close_session">true</prop>
> <prop key="hibernate.current_session_context_class">jta</prop>
>  <prop key="hibernate.connection.release_mode">auto</prop>
> </props>
> </property>
>     </bean>
>  <bean id="dataSource"
> class="org.springframework.jndi.JndiObjectFactoryBean">
>  <property name="jndiName" value="java:/DefaultDS"></property>
> </bean>
>
> <bean id="transactionManager"
> class="org.springframework.transaction.jta.JtaTransactionManager">
> <property name="transactionManagerName" value="java:/TransactionManager" />
>  <property name="autodetectUserTransaction" value="false" />
> </bean>
>  <tx:annotation-driven transaction-manager="transactionManager"/>
>         <!-- TICKET REGISTRY CLEANER --> <bean id="ticketRegistryCleaner"
> class="org.jasig.cas.ticket.registry.support.DefaultTicketRegistryCleaner"
> p:ticketRegistry-ref="ticketRegistry" /> <bean
> id="jobDetailTicketRegistryCleaner"
> class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
> p:targetObject-ref="ticketRegistryCleaner" p:targetMethod="clean" /> <bean
> id="triggerJobDetailTicketRegistryCleaner"
> class="org.springframework.scheduling.quartz.SimpleTriggerBean"
> p:jobDetail-ref="jobDetailTicketRegistryCleaner" p:startDelay="20000"
> p:repeatInterval="5000000" /> <bean id="scheduler"
> class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
> <property name="triggers"> <list> <ref
> local="triggerJobDetailTicketRegistryCleaner" /> </list> </property> </bean>
> </beans>
>
> At this point I have everything else working except persistence/clustering
> any help at all would be great, or help figuring out why the data source
> wouldn't work when I tried normal JPA instead of the JTA connection.
>
>
>  -Andrew
>
> On Jun 24, 2009, at 8:44 AM, Scott Battaglia wrote:
>
> it looks okay.  The only thing I do differently is that my
> "hibernate.hbm2ddl.auto" is in the Spring configuration. I.e.
> http://www.ja-sig.org/wiki/display/CASUM/JpaTicketRegistry
>
> Not sure if that makes a difference at all.
>
> Cheers,
> Scott
>
>
> On Tue, Jun 23, 2009 at 2:06 PM, Andrew Tillinghast <[email protected]
> > wrote:
>
>> The other pieces of the JTA/Persistence config:
>>
>>
>> $JBOSS_HOME/Server/all/deploy/cas.ear/cas.war/classes/META-INF/persistence.xml
>> <persistence xmlns="http://java.sun.com/xml/ns/persistence";
>>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>> xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
>> http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd";
>>  version="1.0">
>> <persistence-unit name="CasPersistence" transaction-type="JTA">
>>         <jta-data-source>java:/DefaultDS</jta-data-source>
>> <properties>
>> <property name="hibernate.dialect"
>> value="org.hibernate.dialect.SQLServerDialect"/>
>>  <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
>> <property name="hibernate.transaction.manager_lookup_class"
>> value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
>>        <property name="jboss.entity.manager.factory.jndi.name"
>> value="java:/CasPersistence"/>
>>  </properties>
>> </persistence-unit>
>> </persistence>
>>
>> $JBOSS_HOME/Server/all/deploy/mssql-ds.xml
>> <?xml version="1.0" encoding="UTF-8"?>
>> <datasources>
>>   <local-tx-datasource>
>>     <jndi-name>DefaultDS</jndi-name>
>>     <connection-url>jdbc:sqlserver://devdb.conncoll.edu:1433
>> </connection-url>
>>
>>  <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
>>     <databaseName>JBoss</databaseName>
>>     <user-name>xxxxx</user-name>
>>     <password>*****</password>
>>       <metadata>
>>          <type-mapping>MS SQLSERVER2000</type-mapping>
>>       </metadata>
>>   </local-tx-datasource>
>> </datasources>
>>
>>  -Andrew
>>
>> On Jun 23, 2009, at 1:56 PM, Scott Battaglia wrote:
>>
>> Andrew,
>>
>> Does the user have the appropriate privileges to create the tables on the
>> fly?
>>
>> Cheers
>> Scott
>>
>>
>> On Tue, Jun 23, 2009 at 1:31 PM, Andrew Tillinghast <
>> [email protected]> wrote:
>>
>>> Still working with CAS, JBoss 5, JPA and MS SQL.
>>>
>>> Working in ticketRegistry.xml
>>>
>>> No matter what I tried I couldn't seem to get JPA connecting to my MS SQL
>>> box, I tried with the MS SQLJBC package, and the JTDS package. Always goto
>>> datasource not found issues, even tried changing the datasource
>>> to org.springframework.jdbc.datasource.DriverManagerDataSource
>>>
>>> I do seem to have JPA working however by connecting it to the JBoss JTA
>>> via JNDI:
>>>
>>> <bean id="ticketRegistry"
>>> class="org.jasig.cas.ticket.registry.JpaTicketRegistry">
>>>      <constructor-arg index="0" ref="entityManagerFactory" />
>>>     </bean>
>>> <bean id="entityManagerFactory"
>>> class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
>>>        <property name="persistenceUnitName" value="CasPersistence"/>
>>>    <property name="jpaVendorAdapter">
>>>  <bean
>>> class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
>>> <property name="showSql" value="true"/>
>>>  <property name="database" value="SQL_SERVER"/>
>>> </bean>
>>> </property>
>>>  <property name="jpaProperties">
>>> <props>
>>> <prop
>>> key="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</prop>
>>>  </props>
>>> </property>
>>>     </bean>
>>>
>>> Now CAS is loading correctly and JBoss is identifying it as persistent
>>> but the CAS tables don't seem to be created. I was expecting I would see
>>> them in the JBoss database I have on the SQL box along side the JBoss
>>> persistence tables but they aren't there.
>>> Right now quartz is throwing an
>>> exception: java.lang.IllegalArgumentException:
>>> org.hibernate.hql.ast.QuerySyntaxException: TicketGrantingTicketImpl is not
>>> mapped [from TicketGrantingTicketImpl]
>>> and on login: org.springframework.web.util.NestedServletException:
>>> Request processing failed; nested exception is
>>> org.springframework.webflow.engine.ActionExecutionException: Exception
>>> thrown executing [annotatedact...@13dc9f3 targetAction = org.jasig.cas.
>>> web.flow.authenticationviaformact...@11d6c3a, attributes = map['method'
>>> -> 'submit']] in state 'submit' of flow 'login-webflow' -- action execution
>>> attributes were 'map['method' -> 'submit']'; nested exception is
>>> org.springframework.dao.InvalidDataAccessApiUsageException: Unknown entity:
>>> org.jasig.cas.ticket.TicketGrantingTicketImpl; nested exception is
>>> java.lang.IllegalArgumentException: Unknown entity:
>>> org.jasig.cas.ticket.TicketGrantingTicketImpl
>>>  I'm wondering is I just create the CAS tables by hand it might work.
>>>
>>> <image.gif> Andrew Tillinghast
>>> Sr. Web Developer
>>> [email protected]
>>> 270 Mohegan Avenue
>>> New London, CT 06320-4196
>>> Ph:860 439-5265 Fax: 860 439-2871
>>> P *Think before you print
>>> **
>>> *CONFIDENTIALITY: This email (including any attachments) may contain
>>> confidential,
>>> proprietary and privileged information, and unauthorized disclosure or
>>> use is
>>> prohibited. If you received this email in error, please notify the sender
>>> and delete
>>> this email from your system.
>>>
>>> --
>>> You are currently subscribed to [email protected] as: 
>>> [email protected]
>>>
>>>
>>>
>>>
>>>
>>> To unsubscribe, change settings or access archives, see 
>>> http://www.ja-sig.org/wiki/display/JSG/cas-user
>>>
>>>
>> --
>> You are currently subscribed to [email protected] as: 
>> [email protected]
>>
>>
>> To unsubscribe, change settings or access archives, see 
>> http://www.ja-sig.org/wiki/display/JSG/cas-user
>>
>>
>> --
>> You are currently subscribed to [email protected] as: 
>> [email protected]
>>
>>
>>
>> To unsubscribe, change settings or access archives, see 
>> http://www.ja-sig.org/wiki/display/JSG/cas-user
>>
>>
> --
> You are currently subscribed to [email protected] as: 
> [email protected]
> To unsubscribe, change settings or access archives, see 
> http://www.ja-sig.org/wiki/display/JSG/cas-user
>
>
> --
> You are currently subscribed to [email protected] as: 
> [email protected]
>
> To unsubscribe, change settings or access archives, see 
> http://www.ja-sig.org/wiki/display/JSG/cas-user
>
>

-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to