jjzjj

DropWizard

全部标签

java - 使用 Dropwizard 进行基于角色的访问控制

我们正在为我们的下一个项目添加Dropwizard,我们需要实现的其中一件事是基于角色的访问控制机制。是否有使用Dropwizard或我可以遵循的示例的标准简单方法? 最佳答案 你看过dropwizard-auth了吗??它使得插入任何你想要的身份验证方法(Shiro、Spring等)变得非常容易。如果您想走那么远,它还支持OAuth2...您可以像这样实现Shiro身份validator:publicclassBasicAuthenticatorimplementsAuthenticator{@OverridepublicOpti

java - Dropwizard 0.8 和 Jetty 在资源上失败返回 404

我正在尝试连接一个dropwizard0.8.*应用程序,并且我使用了一个helloworld入门示例。代码保持不变,应用程序正常启动。虽然当我尝试访问分配给helloworldGET请求的路径时,浏览器返回一个:HTTPERROR404Problemaccessing/hello-world.Reason:NotFound这有点奇怪,因为应用日志另有说明并为该请求返回200:0:0:0:0:0:0:0:1--[15/Sep/2015:07:33:58+0000]"GET/hello-worldHTTP/1.1"200-"-""Mozilla/5.0(Macintosh;IntelMa

java - 让 Jersey 1.x 和 2.x 共存

我有一个Dropwizard项目(使用Jersey2.x),我需要使用另一个库,该库依赖于1.x的jersey-client,我在让两者在类路径中共存时遇到了一些麻烦.看起来正在发生的事情是HK2正在寻找任何实现javax.ws.rs.*提供者的东西,并试图实例化它们。当它是Jersey1.x的类时,它需要的依赖注入(inject)不存在,我最终会遇到很多错误,例如:Causedby:java.lang.IllegalArgumentException:TheMultiPartConfiginstanceweexpectedisnotpresent.Haveyouregisteredt

java - 在运行时更新 Dropwizard 配置

是否可以让我的应用程序在运行时更新配置设置?我可以轻松地在我的UI中公开我想要的设置,但是有没有办法允许用户更新设置并使它们永久化,即将它们保存到config.yaml文件中?我能看到它的唯一方法是手动更新文件,然后重新启动服务器,这似乎有点受限。 最佳答案 是的。可以在运行时重新加载服务类。Dropwizard本身没有重新加载应用程序的方法,但jersey有。Jersey在内部使用容器对象来维护正在运行的应用程序。Dropwizard使用Jersey的ServletContainer类来运行应用程序。如何在不重启的情况下重新加载应

java - Liquibase 为 postgres 创建架构

如果数据库不存在,我正在使用Dropwizard(1.0.0)和Liquibase创建数据库。这里的问题是我使用的是不同的Postgres架构(非公开)。似乎Liquibase之前无法创建此模式,是吗?我原以为Liquibase会生成此架构,但如果我尝试构建数据库,它总是会抛出“未找到名为xx的架构”。 最佳答案 即使Liquibase在其捆绑的更改/重构中没有CREATESCHEMA(因此在dropwizarddbdump期间不会生成),您仍然可以包括这是使用sqltag的迁移变更日志中的变更集,如下:CREATESCHEMAfo

java - DropWizard 认证领域

在DropWizard中,我可以像这样设置基本身份验证(在Application#runimpl中):BasicAuthProviderauthProvider=newBasicAuthProvider(authenticator,"SECRET_REALM");environment.jersey().register(authProvider);我想知道字符串realm("SECRET_REALM")的意义是什么?根据一般的安全概念,我将“领域”理解为存储用户和角色/权限的地方(数据库、目录、文件、keystore等)。领域在DropWizard中意味着什么,在BasicAuthP

java - Dropwizard 不会将自定义记录器记录到文件中

我有一个dropwizard应用程序,我在其中将记录器附加程序配置为文件如下:logging:level:INFOloggers:"mylogger":INFO"com.path.to.class":INFOappenders:-type:filecurrentLogFilename:.logs/mylogs.logarchivedLogFilenamePattern:.logs/archive.%d.log.gzarchivedFileCount:14并且,在我的应用中创建了记录器:importorg.slf4j.Logger;importorg.slf4j.LoggerFactor

java - 使用 Jersey 的 AbstractHttpContextInjectable 的自定义方法注释不起作用

如果以不安全的方式访问某些方法,我想对其进行限制。我正在创建一个@Secure注释来检查请求是否通过安全通道发送。但是,我无法创建捕获请求的HttpContext的可注入(inject)方法。@Documented@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD})public@interfaceSecure{}publicclassSecureProviderimplementsInjectableProvider{@OverridepublicComponentScopegetScope(){returnC

java - Dropwizard - 如何从 View 进行服务器端重定向?

我是DropWizard的新手,并希望从服务器端View重定向到我的应用程序中的另一个url。DropWizard是否以某种方式结束了这个常见任务?例如@GETpublicViewgetView(@ContextHttpServletRequestreq){Viewview=newView();if(somethingBad){//codeheretoredirecttoanotherurl,eg/bad_data}else{returnview;}} 最佳答案 这是一个简单的代码示例,它实际使用WebApplicationExce

java - dropwizard-testing 资源测试在构建 ResourceTestRule 时爆炸

我有一个我正在尝试设置的简单ResourceTest,但是当我尝试构建ResourceTestRule时,出现以下异常:ProfilesResourceTest,shouldGetEmptyStuffWARN[2016-05-1517:44:50,159]org.glassfish.jersey.internal.Errors:Thefollowingwarningshavebeendetected:WARNING:HK2servicereificationfailedfor[com.sun.jersey.core.impl.provider.entity.MimeMultipartP