JavaWebStack / JavaWebStack/orm
Show better error message when Model class isn't abstract
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Java
- Estrelas
- 7
- Forks
- 1
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
**Describe the Bug**
When you extend the ORM Model to your own Model and forget to set it to abstract, you get an Exception saying
```
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.lang.reflect.Field.getType()" because the return value of "org.javawebstack.orm.TableInfo.getField(String)" is null
at org.javawebstack.orm.TableInfo.getIdType(TableInfo.java:282)
at org.javawebstack.orm.TableInfo.analyzeTable(TableInfo.java:95)
at org.javawebstack.orm.TableInfo.constructInfo(TableInfo.java:61)
at org.javawebstack.orm.TableInfo.(TableInfo.java:56)
at org.javawebstack.orm.Repo.(Repo.java:35)
at org.javawebstack.orm.ORM.register(ORM.java:25)
at org.javawebstack.orm.ORM.register(ORM.java:37)
```
**To Reproduce**
Steps to reproduce the behavior:
1. Forget to set your model class to abstract
**Expected behavior**
Maybe show some better error message which indicates that your base model isn't abstract yet.
**Environment Information:**
- Java Language Level 21
- ORM Version 1.0.3-SNAPSHOT
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Reproduza a falha registrando um modelo não abstrato e comece em ORM.register, seguindo a stack até Repo.java e TableInfo.java, especialmente por constructInfo, analyzeTable e getIdType nas proximidades das linhas relatadas. Verifique os caminhos existentes de validação de modelos e tratamento de erros. Considera-se concluído quando esse uso indevido produzir uma exceção clara identificando que o modelo base deve ser abstrato, em vez da NullPointerException relatada.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- java
- Domínio
- backend, databases
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 35/100