Fahmi,
create-drop is used during initial development of a jpa project when database
design might change regularly. Once database is set, then it gets changed to
update. There is a create option but it will result in errors if the database
already exists. create can be used once and then changed to update.
Check catalina.out for logs.
CAS is picking up one entry from the database. It reloads every 2 minutes. Does
it show 2 entries when you add one manually?
Are the null values in the workbench image from the cas-management created
entry?
Ray
On Wed, 2019-03-20 at 20:17 -0700, Fahmi L. Ramdhani wrote:
Hello Ray, thank for your reply.
I changed the configuration:
- Adding cas.jdbc.showSql=true to cas.properties and management.properties
- Adding healthQuery to cas.properties and management.properties
- Change ddlAuto to update
- Rebuilding project cas and management
Log showing (cas.log)
2019-03-20 22:51:33,260 INFO [org.apereo.cas.services.AbstractServicesManager]
- <Loaded [1] service(s) from [JpaServiceRegistry].>
2019-03-20 22:51:43,276 DEBUG
[org.apereo.cas.ticket.registry.DefaultTicketRegistryCleaner] - <Attempting to
acquire ticket cleanup lock.>
2019-03-20 22:51:43,314 DEBUG
[org.apereo.cas.ticket.registry.support.JpaLockingStrategy] - <Creating
[cas-ticket-registry-cleaner] lock initially held by [web-01].>
2019-03-20 22:51:43,364 DEBUG
[org.apereo.cas.ticket.registry.DefaultTicketRegistryCleaner] - <Acquired lock.
Proceeding with cleanup.>
2019-03-20 22:51:43,378 DEBUG [org.apereo.cas.ticket.DefaultTicketCatalog] -
<Located all registered and known sorted ticket definitions
[[DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.ServiceTicketImpl, prefix=ST,
properties=DefaultTicketDefinitionProperties(cascade=false, storageName=null,
storageTimeout=0, storagePassword=null), order=-2147483648),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.ProxyTicketImpl, prefix=PT,
properties=DefaultTicketDefinitionProperties(cascade=false, storageName=null,
storageTimeout=0, storagePassword=null), order=-2147483648),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.TicketGrantingTicketImpl, prefix=TGT,
properties=DefaultTicketDefinitionProperties(cascade=true, storageName=null,
storageTimeout=0, storagePassword=null), order=2147483647),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.refreshtoken.RefreshTokenImpl, prefix=RT,
properties=DefaultTicketDefinitionProperties(cascade=false,
storageName=oauthRefreshTokensCache, storageTimeout=2592000,
storagePassword=null), order=2147483647),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.accesstoken.AccessTokenImpl, prefix=AT,
properties=DefaultTicketDefinitionProperties(cascade=false,
storageName=oauthAccessTokensCache, storageTimeout=28800,
storagePassword=null), order=2147483647),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.TransientSessionTicketImpl, prefix=TST,
properties=DefaultTicketDefinitionProperties(cascade=false, storageName=null,
storageTimeout=0, storagePassword=null), order=2147483647),
DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.code.OAuthCodeImpl, prefix=OC,
properties=DefaultTicketDefinitionProperties(cascade=false,
storageName=oauthCodesCache, storageTimeout=30, storagePassword=null),
order=2147483647), DefaultTicketDefinition(implementationClass=class
org.apereo.cas.ticket.ProxyGrantingTicketImpl, prefix=PGT,
properties=DefaultTicketDefinitionProperties(cascade=true, storageName=null,
storageTimeout=0, storagePassword=null), order=2147483647)]]>
1. Adding 2 initial service registry using MySQL Workbench
2. I am login successfully to Services Management (screen shoot in attachment).
3. I am try to add an service registry, then save it.
4. Successfully added an service registry, but it is not stored in the database.
5. The table still displays 2 rows (not 3 rows, 1 added in service management)
Log show (cas-management.log, not showing SQL QUERIES)
============================================================= WHO: superadmin
WHAT:
AbstractRegisteredService(serviceId=^https:\/\/portal.example.com(\\z|\/.*),
name=Asia, theme=null, informationU... ACTION: SAVE_SERVICE_SUCCESS
APPLICATION: CAS_Management WHEN: Wed Mar 20 23:03:24 EDT 2019 CLIENT IP
ADDRESS: 103.xxx.1x8.xxx SERVER IP ADDRESS: 172.16.2.53
=============================================================
2019-03-20 23:04:04,149 ERROR [org.apereo.cas.mgmt.GitUtil] - Git repository
not found/initialized at [/etc/cas/services-repo/.git]
2019-03-20 23:04:04,149 ERROR
[org.apereo.cas.mgmt.services.web.ServiceRepositoryController] - repository not
found: /etc/cas/services-repo/.git
java.lang.RuntimeException: repository not found: /etc/cas/services-repo/.git
at org.apereo.cas.mgmt.GitUtil.initializeGitRepository(GitUtil.java:1225)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at org.apereo.cas.mgmt.GitUtil.<init>(GitUtil.java:100)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at
org.apereo.cas.mgmt.services.web.factory.RepositoryFactory.buildGitUtil(RepositoryFactory.java:81)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at
org.apereo.cas.mgmt.services.web.factory.RepositoryFactory.masterRepository(RepositoryFactory.java:70)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at
org.apereo.cas.mgmt.services.web.factory.RepositoryFactory.from(RepositoryFactory.java:53)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at
org.apereo.cas.mgmt.services.web.factory.RepositoryFactory.from(RepositoryFactory.java:40)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_191]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:1.8.0_191]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:1.8.0_191]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_191]
at
org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
~[spring-core-4.3.17.RELEASE.jar:4.3.17.RELEASE]
at
org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:470)
~[spring-cloud-context-1.3.0.RELEASE.jar:1.3.0.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
~[spring-aop-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:671)
~[spring-aop-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at
org.apereo.cas.mgmt.services.web.factory.RepositoryFactory$$EnhancerBySpringCGLIB$$892cee48.from(<generated>)
~[cas-management-webapp-support-5.3.6.jar:5.3.6]
at
org.apereo.cas.mgmt.services.web.ServiceRepositoryController.gitStatus(ServiceRepositoryController.java:322)
[cas-management-webapp-support-5.3.6.jar:5.3.6]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_191]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:1.8.0_191]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:1.8.0_191]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_191]
at
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
[spring-web-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
[spring-web-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
[spring-webmvc-4.3.17.RELEASE.jar:4.3.17.RELEASE]
at
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
[spring-webmvc-4.3.17.RELEASE.jar:4.3.17.RELEASE]
I set ddlAuto = create-drop because it knows the table structure used by CAS.
Or is there another way to find out the structure of the table? Now I change it
to update.
Yes, I run a server and management on the same server.
I don't understand about this problem. Log displays do not match the
configuration. Can someone solve this problem?
Thank you.
Pada Kamis, 21 Maret 2019 07.12.05 UTC+7, rbon menulis:
Fahmi,
ddlAuto should be set to 'none' or 'update'.
You can also set cas.jdbc.showSql=true to see queries in the logs.
There is also a health query healthQuery='select ...'
Are you running CAS and management server on the same tomcat at the same time
or do you shut one down and start the other?
The create-drop will drop the database during tomcat shutdown.
After you create a service, check to see that it is there with mysql command
line tool.
This might give some info in the logs:
<!-- INFO Loaded [#] service(s) from [???ServiceRegistryDAO]
DEBUG Adding registered service [service URL] -->
<AsyncLogger name="org.apereo.cas.services.AbstractServicesManager"
level="debug" />
Ray
--
Ray Bon
Programmer analyst
Development Services, University Systems
2507218831 | CLE 019 | [email protected]<javascript:>
--
Ray Bon
Programmer analyst
Development Services, University Systems
2507218831 | CLE 019 | [email protected]
--
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
---
You received this message because you are subscribed to the Google Groups "CAS
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/a/apereo.org/d/msgid/cas-user/1553184768.3399.104.camel%40uvic.ca.