Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UnknownColumnHandler の handle() を空実装にすると NullPointerException が発生する #101

Closed
Kazamaturi opened this issue Oct 15, 2015 · 2 comments · Fixed by #102

Comments

@Kazamaturi
Copy link

未知のカラムが検出された場合にマッピングはせずに無視するようにするため、UnknownColumnHandler を handle() 内で何もしないように実装したところ、EntityProvider.build() 内で NullPointerException が発生しました。

UnknownColumnHandler の handle() を空実装とすることは過去に勧められているようなのですが、現在もこの方針で実装することは問題ないのでしょうか。
https://twitter.com/nakamura_to/status/443416808201003008

例外のスタックトレース

java.lang.NullPointerException
    at org.seasar.doma.internal.jdbc.command.EntityProvider.build(EntityProvider.java:90)
    at org.seasar.doma.internal.jdbc.command.EntityProvider.get(EntityProvider.java:77)
    at org.seasar.doma.internal.jdbc.command.ResultSetIterator.next(ResultSetIterator.java:69)
    at org.seasar.doma.internal.jdbc.command.AbstractIterationHandler.iterate(AbstractIterationHandler.java:78)
    at org.seasar.doma.internal.jdbc.command.AbstractIterationHandler.handle(AbstractIterationHandler.java:66)  
    at org.seasar.doma.internal.jdbc.command.AbstractSingleResultHandler.handle(AbstractSingleResultHandler.java:53)
    at org.seasar.doma.jdbc.command.SelectCommand.handleResultSet(SelectCommand.java:122)
    at org.seasar.doma.jdbc.command.SelectCommand.executeQuery(SelectCommand.java:114)
    at org.seasar.doma.jdbc.command.SelectCommand.execute(SelectCommand.java:69)
    at com.example.myapp.dao.ProductsDaoImpl.selectById(ProductsDaoImpl.java:43)
(以下略)

UnknownColumnHandler の実装

public class DomaUnknownColumnHandler implements UnknownColumnHandler {
    @Override
    public void handle(Query query, EntityType<?> entityType, String unknownColumnName) {
        //    例外を投げないxx   
    }
}

お手すきにて、助言をいただけますと幸いです。

@nakamura-to
Copy link
Member

報告ありがとうございます。
NullPointerExceptionが発生するのはDomaのバグですね。
次のバージョンで修正します。

@Kazamaturi
Copy link
Author

お忙しいところ対応頂きありがとうございました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants