andrehertwig / admintool Goto Github PK
View Code? Open in Web Editor NEWExtendable Admin UI
License: MIT License
Extendable Admin UI
License: MIT License
Because of enabling CSRF protection, logout must be sent as POST
The WAR Project is disabled right now.
Fix for newest Log4j appender
If write mode is enabled also read-only file should be allowed to display
For submenues which will have no target page and maybe therefore no name an NPE will happen while rendering the menu
[http-nio-8090-exec-4] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "@adminToolMenuUtils.getListItemClass(activeMenu, menuItem)" (admintool/fragments/secFragements:13)] with root cause java.lang.NullPointerException at de.chandre.admintool.core.utils.AdminToolMenuUtils.lambda$1(AdminToolMenuUtils.java:120) ~[classes/:?]
After folder creation (and also after deleting a resource) a redirect will be done, but with missing application context
Reload of files in file viewer in tomcat not possible.
Regarding enabling CSRF protection, POST actions will be forbidden because of missing CSRF header information
Provide a simple user view where states, passwords and roles can be changed and new users could be added
Show version information in footer
add additional property files to show in admin-tools-properties view
App context in missing url, so css is not getting loaded (from WAR in Tomcat)
Because webjars/jsdeliver seems to have an an arbitrary versioning/path usage, more control for used external css/js could be useful
TypeError: getByID(...).adminToolLog4j is not a function
adminToolLog4j has been renamed to adminToolLog4jLoggers
Show information about stateful jobs
create security submodule with
Seems that CDN Path has been switched
Sorting of root paths and file list should be initially by name in natural order
Reason unknown.
Update Validator-Plugin + option to use CDN for validator-plugin
Until now CSRF protection is not supported for AjaxRequest of core tools.
Just implement the CSRF headers.
Hi
I am using Spring Boot 1.4.4.RELEASE and getting below exception.
2017-02-01 18:36:33.548 INFO 15488 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@6b927fb: startup date [Wed Feb 01 18:36:33 IST 2017]; root of context hierarchy
2017-02-01 18:36:37.627 INFO 15488 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 9090 (http)
2017-02-01 18:36:37.667 INFO 15488 --- [ main] o.apache.catalina.core.StandardService : Starting service Tomcat
2017-02-01 18:36:37.671 INFO 15488 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.11
2017-02-01 18:36:38.008 INFO 15488 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2017-02-01 18:36:38.008 INFO 15488 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 4469 ms
2017-02-01 18:36:38.523 INFO 15488 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/]
2017-02-01 18:36:38.524 INFO 15488 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/]
2017-02-01 18:36:38.527 INFO 15488 --- [ost-startStop-1] .s.DelegatingFilterProxyRegistrationBean : Mapping filter: 'springSecurityFilterChain' to: [/*]
2017-02-01 18:36:38.528 INFO 15488 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2017-02-01 18:36:38.705 WARN 15488 --- [ main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'customWebMvcAutoConfig' defined in URL [jar:file:/C:/Users/app/.m2/repository/de/chandre/admin-tools/admin-tools-core/1.1.0/admin-tools-core-1.1.0.jar!/de/chandre/admintool/core/CustomWebMvcAutoConfig.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [de.chandre.admintool.core.CustomWebMvcAutoConfig$$EnhancerBySpringCGLIB$$f26a0197]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter: method ()V not found
2017-02-01 18:36:38.732 INFO 15488 --- [ main] utoConfigurationReportLoggingInitializer :
Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-02-01 18:36:38.758 ERROR 15488 --- [ main] o.s.boot.SpringApplication : Application startup failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'customWebMvcAutoConfig' defined in URL [jar:file:/C:/Users/app/.m2/repository/de/chandre/admin-tools/admin-tools-core/1.1.0/admin-tools-core-1.1.0.jar!/de/chandre/admintool/core/CustomWebMvcAutoConfig.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [de.chandre.admintool.core.CustomWebMvcAutoConfig$$EnhancerBySpringCGLIB$$f26a0197]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter: method ()V not found
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1155) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1099) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:866) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:762) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:372) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:316) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1187) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1176) ~[spring-boot-1.4.4.RELEASE.jar:1.4.4.RELEASE]
at org.naetag.admin.AdminDashBoardApplication.main(AdminDashBoardApplication.java:18) ~[classes/:na]
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [de.chandre.admintool.core.CustomWebMvcAutoConfig$$EnhancerBySpringCGLIB$$f26a0197]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter: method ()V not found
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1147) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
... 17 common frames omitted
Caused by: java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter: method ()V not found
at de.chandre.admintool.core.CustomWebMvcAutoConfig.(CustomWebMvcAutoConfig.java:14) ~[admin-tools-core-1.1.0.jar:na]
at de.chandre.admintool.core.CustomWebMvcAutoConfig$$EnhancerBySpringCGLIB$$f26a0197.() ~[admin-tools-core-1.1.0.jar:na]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0-ea]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) ~[na:1.8.0-ea]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0-ea]
at java.lang.reflect.Constructor.newInstance(Constructor.java:414) ~[na:1.8.0-ea]
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142) ~[spring-beans-4.3.6.RELEASE.jar:4.3.6.RELEASE]
... 19 common frames omitted
view of java.util.Date as human readable date + timestamp
The attribute hide on MenuEntry will not be used.
Jminix is good and stable, but in case of enabled Spring Security CRSF Tokens, update fucntionality will not working anymore.
Furthermore it is a standalone application and brings maybe old and unnecessary dependencies.
Solution: create a own Module
To avoid executing the regular expression all the time while template search, cache the found template url in relation to its resource name.
provide an option to deactivate the cache
Provide an option to append additional CSS and JS not only to AdminComponent.
Because of the new feature since 1.0.3 adding additional CSS and JS links to a menuEntry a reverse resolution to root menuItem of all CSS and JS could be useful
WebApp-Context is appended twice
the menuEntry.target should not start with a leading slash but 404 template path in abstractController does.
make it also more safe regarding configuring errors
When deployed in a Tomcat the template from core module will be loaded first instead of loading the ones from extending libraries
create config classes for tool which still have none
add toString() to AdminToolImpl
add more JavaDoc
minor enhancements about processing folder creation and resource deletion
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.