草庐IT

before-filter

全部标签

Java/jetty : How to Add Filter to Embedded Jetty

我正在使用嵌入式Jetty,我想添加一个servlet过滤器以在每个请求之前检查身份验证。我尝试关注thisexample但看起来签名已更改。org.eclipse.jettyjetty-server9.0.4.v20130625我的Jettystarter看起来像这样:publicclassJettyStarter{publicstaticvoidmain(finalString[]args)throwsException{Serverserver=newServer(8080);finalServletHolderservletHolder=newServletHolder(new

Java Swing : How can I implement a login screen before showing a JFrame?

我正在尝试制作一个小游戏,首先会向玩家显示一个简单的登录屏幕,他们可以在其中输入自己的名字(稍后我需要它来存储他们的游戏状态信息),让他们选择难度级别等,并且只会在玩家点击播放按钮后显示主游戏屏幕。我还想让玩家导航到一个(希望对他们来说相当大)奖杯Collection,同样在他们看来是一个新屏幕。到目前为止,我有一个带有网格布局的主游戏窗口和一个可以运行的游戏(对我来说太棒了!)。现在我想添加上面的功能。我该怎么做呢?我不认为我想走多个JFrame路线,因为我一次只希望在任务栏中显示一个图标(或者将它们的可见性设置为对图标也产生错误影响?)我是否改为制作和销毁布局或面板或像那样的东西?

java - .awaitTermination() 是否在执行程序中完成工作之前建立 happens-before?

我多年来一直存在的问题:在此伪代码中,ExecutorServicesvc=Executors.newFixedThreadPool(3);svc.submit(newRunnable(){/*codeA*/});svc.shutdown();if(svc.awaitTermination(...)){//codeB.awaitTermination()没有被记录为在代码A和B之间建立happens-before。它不是的原因是什么?ExecutorService和concurrentpackagejavadocs定义了happens-before在任务和完成的工作之间它们被提交,但在

java - 运行忽略@Before/@After 的 Junit @Test

是否可以在一个类中运行一个JUnit@Test方法,该类的方法用@Before注释,但忽略@Before方法仅用于此测试?编辑:我感兴趣的是JUnit是否支持此功能,而不是解决方法。我知道一些解决方法,例如将测试移动到另一个类中或删除注释并在每个测试方法中手动调用setUp()。假设在一个类中有30个测试,其中29个@Before确实简化了测试初始化​​,但其中一个(或多个)没用/它使事情复杂化。publicclassMyTestClass{@BeforepublicvoidsetUp(){//setuplogic}@Testpublicvoidtest1(){//[...]}@Tes

java - 未调用 TestRule 中的 @Before 方法

我实现了一个JUnit4TestRule(扩展了一个ExternalResource),并将其作为@ClassRule注入(inject)在我的测试类中:我想在此类的每个测试中一次性初始化一个资源,并最终将其拆除。我的问题是我的@Before和@After规则方法在我的@Test方法之前/之后根本没有被调用:知道为什么会这样吗?最小可编译示例:packagecom.acme.test;importstaticorg.junit.Assert.assertNull;importorg.junit.ClassRule;importorg.junit.Test;importorg.junit

java - 如何用 Streams 替换 Iterables.filter()?

我正在尝试从Guava迁移到Java8Streams,但不知道如何处理可迭代对象。这是我的代码,用于从可迭代对象中删除空字符串:Iterablelist=Iterables.filter(raw,//it'sIterablenewPredicate(){@Overridepublicbooleanapply(Stringtext){return!text.isEmpty();}});注意,这是一个Iterable,不是Collection.它可能包含无限数量的项目,我无法将它们全部加载到内存中。我的Java8替代品是什么?顺便说一句,有了Lamba,这段代码看起来会更短:Iterabl

java - 如何在Keycloak身份验证之前调用javax.servlet.Filter

我们使用resteasy开发了一个RESTAPI。(部署在wildfly10)基本上,这些RESTAPI是从另一个应用程序内部调用的,端点使用keycloak进行保护。但是一个端点暴露给外部方(该端点也使用key斗篷进行保护)。但由于外部方无法提供Keycloak授权代码,我们已经完成了一个实现,其中客户端使用应用程序生成的auth_key注册,客户端将使用该auth_key调用端点。然后在网络过滤器(javax.servlet.Filter)中,使用auth_key我们获得相关的keycloak身份验证Bearertoken。如果需要(例如:token过期),我们也会调用Keyclo

Java Happens-Before 和线程安全

假设我有一个包装HashMap的类,如下所示:publicfinalclassMyClass{privatefinalMapmap;//CalledbyThread1publicMyClass(intsize){this.map=newHashMap(size);}//OnlyevercalledbyThread2publicfinalStringput(Stringkey,Stringval){returnmap.put(key,value);}//OnlyevercalledbyThread2publicfinalStringget(Stringkey){returnmap.get

java - 在 JUnit 测试的 @Before 方法中使用断言语句?

我应该在JUnit测试的@Before方法中使用断言语句(assertEquals,...)吗?如果断言失败,所有测试都将失败,所以它的行为完全符合我的要求,但我不认为这是一个好主意,因为@Before注释方法不是测试. 最佳答案 听起来像Assume机制会更合适。Asetofmethodsusefulforstatingassumptionsabouttheconditionsinwhichatestismeaningful.Afailedassumptiondoesnotmeanthecodeisbroken,butthatth

Java流findAny()在filter()操作过滤掉所有内容后遇到空指针异常

我无法理解为什么findAny()在对流进行filter()操作后抛出空指针异常。在这个特定的测试用例中,过滤操作应该过滤掉所有内容,不为findAny()留下任何结果。Optionalencryption=sseEncryptionList.stream().filter(n->n.textValue().equals("AES256"))//Filtersouteverything.findAny();//Throwsnullpointerexception堆栈跟踪:Exceptioninthread"main"java.lang.NullPointerExceptionatexa