1

こんにちは、playframework プロジェクトでデッドボルト モジュールを構成する際に小さな問題が発生しました。私は playframework 2.2.1 バージョンを使用しています。デッドボルトのドキュメント ページ http://deadbolt.ws/#/java-docsに示されているように、すべてを段階的に実行していました。

私が最初に遭遇した問題は、application.conf にありました。これは、次のようになったためです。

# This is the main configuration file for the application.
# ~~~~~

# Secret key
# ~~~~~
# The secret key is used to secure cryptographics functions.
# If you deploy your application to several instances be sure to use the same key!
application.secret="0ki/vB`gn_SY]NWR;8I0OM1^/<>3AF;dMG^VFc8JQ5sGJ9eL4:/7Hpc2/y>Ug;bu"

# The application languages
# ~~~~~
application.langs="en,de"
parsers.text.maxLength=10000000K

deadbolt.java.handler
deadbolt {
before-auth-check-timeout=4000,
java {
    cache-user=true,
        handlers {
        defaultHandler=com.example.security.MyDeadboltHandler,
        be.objectify.deadbolt.java.DeadboltHandler,
        be.objectify.deadbolt.core.models.Subject,
        foo=com.example.security.FooDeadboltHandler,
        be.objectify.deadbolt.java.DynamicResourceHandler,
            bar=com.example.security.BarDeadboltHandler
        }
    }
}


# Global object class
# ~~~~~
# Define the Global object class for this application.
# Default to Global in the root package.
# application.global=Global

適切なデッドボルト構成を追加したことを知らないため、application.conf で他のものとは少し見た目が異なります

play アプリケーションを起動すると play debug ~run

何かが更新およびインストールされていて、エラーが発生しました

[info] Done updating.

java.lang.NoSuchMethodException:  
play.core.server.NettyServer.mainDevHttpMode(play.core.SBTLink,
play.core.SBTDocHandler, int)
    at java.lang.Class.getMethod(Class.java:1665)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.apply(PlayRun.scala:232)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.apply(PlayRun.scala:91)
    at scala.Function7$$anonfun$tupled$1.apply(Function7.scala:35)
    at scala.Function7$$anonfun$tupled$1.apply(Function7.scala:34)
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
[trace] Stack trace suppressed: run last compile:run for the full output.
[error] (compile:run) java.lang.NoSuchMethodException:   
play.core.server.NettyServer.mainDevHttpMode(play.core.SBTLink,  
play.core.SBTDocHandler, int)
[error] Total time: 6 s, completed 2014-09-17 13:00:41
1. Waiting for source changes... (press enter to interrupt)

誰かがこの問題を抱えていたり、私が何を間違っていたかを知っているかもしれません.

4

1 に答える 1

1

ハンドラ ブロックも間違っているようです。キーと値のペアである必要がありますが、そこにはいくつかしかありません。それはもっと似ているはずです

handlers { 
    defaultHandler=com.example.security.MyDeadboltHandler,
    foo=com.example.security.FooDeadboltHandler,
    bar=com.example.security.BarDeadboltHandler 
}
于 2014-09-30T05:40:53.500 に答える