This is unfinished installation. I haven't finished installation and dropped this framework. I've decided to implement CRUD oprtation with Bootstrap free admin UI themes. But this article could help you with some problems during installation process.

I have got application based on Spring 4 and Hibernate 4 (integration guide). After setup of frameworks, next step of the development was to create administrative UI and here was two options: create simple CRUD logic, using Bootstrap, or use external library. Choice was between LightAdmin and Spring Batch Admin, but application was designed for users without programming skills, so I've choosen LightAdmin.

Installation instruction

Part of it was taken from documentation and part was taken from following github-project. It's really wierd that something of the installation features are missing from getting-started tutorial on the main site, and I'll cover this stuff only.

First of all, you should implement everything from getting-started tutorial on the main site of the project. There are only Maven integration guide, but for Gradle configuration will be like this:

repositories {  
    mavenLocal()
    mavenCentral()
    ...
    maven { url "hhttp://lightadmin.org/nexus/content/repositories/releases" }
}

dependencies {  
    ...
    compile 'org.lightadmin:lightadmin:1.0.0.RELEASE'
}

I don't do anything else. I have class-based configuration for Hibernate and I have not got web.xml file, as I'm using SpringBoot. So this is only two things that you should add to the Gradle to run LightAdmin.

Last thing that you'll need to implement and this thing wasn't covered in the guide - it's Repositories. Maybe it's obvious thing for professional Hibernate and Spring developers, but for begginers it is not.

It's simple to implement:

package <youpackage>;

import org.lightadmin.boot.domain.Hotel;  
import org.springframework.data.repository.PagingAndSortingRepository;  
import org.springframework.transaction.annotation.Transactional;

@Transactional
public interface YourModelClassRepository extends PagingAndSortingRepository<YourModelClass, Long> {

}

As you see, you should create class named YourModelClassRepository and extend it from PagingAndSortingRepository generic class, where two generic types is YourClassName and id type.

Errors and how to fix it

Type int not present

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'excursionDynamicJpaRepository': Invocation of init method failed; nested exception is java.lang.TypeNotPresentException: Type int not present  

I've opened question on StackOverflow and after I put bounty on it, I've got response fom LightAdmin developer. Issue was in the model, where id was type of int, so you just need to change it for wrapper class Integer and this issue will be fixed.

Later I've got quite same problem with my boolean field, but I decide to drop this framework, so I only assume, that solution to the same problem was to change every primitive types to class-wrappers.

Error with thymeleaft templating

Really, in the project above mentioned how to handle tymeleaf templating. It seems, that you should write all templates yourself.

And when I recognize it, I dropped this project. It will be a bit more time consuming to write down CRUD-loigc and templating with free Bootstrap admin UI theme, but it will give you expirience with Hibernate and Spring controllers, so the rest part of your application will be fast to implement.

So, DON'T USE LIGHTADMIN. Maybe it's good administration framework, but it's really hard to install and developers could stop support it and you'll be stuck with old version of frameworks.