草庐IT

interceptor

全部标签

java - 无法更改 HTTP 接受 header - 使用不同的语言环境解析策略

我在Pluralsight上学习Springmvc类(class),在运行我的应用程序时出现“无法更改HTTP接受header-使用不同的区域设置解析策略”这个错误。在此之前,我将这些bean添加到servlet-config.xml在资源文件夹中我有两个文件。messages_es.properties和messages.properties。一个有goal.text=MinutosEjercicioparaeldíadehoy:及其他goal.text=MinutesExerciseForTheDayToday:所以目标是选择语言。在jsp文件中我有这一行Language:Engl

java - Spring 启动 : How to add interceptors to static resources?

我在/static/img/**中有几个文件夹,我需要向其中一些文件夹添加拦截器以检查用户权限。我之前使用过拦截器并以这种方式添加它们:@SpringBootApplication@EnableTransactionManagementpublicclassApplicationextendsWebMvcConfigurerAdapter{...@OverridepublicvoidaddResourceHandlers(ResourceHandlerRegistryregistry){registry.addResourceHandler("/static/**").addResou

java - 如何在 EJB 拦截器的生命周期事件方法中获取调用者名称

我使用JavaEE5。我使用三种日志记录方法为所有EJB编写了一个拦截器:publicclassDefaultInterceptor{publicstaticfinalStringPREFIX="!!!!!!!!!Interceptor:";@PostConstructpublicvoidpostConstruct(InvocationContextctx){try{System.out.println(PREFIX+"postConstruct");}catch(Exceptionex){thrownewRuntimeException(ex);}}@PreDestroypublic

java - 如何仅在特定方法中使用 RESTEasy PreProcessInterceptor?

我正在编写一个RESTAPI,使用RestEasy2.3.4.Final。我知道拦截器将拦截我的所有请求,并且PreProcessInterceptor将是第一个(在一切之前)被调用的。我想知道如何让这个拦截器在特定方法被调用时被调用。我尝试同时使用PreProcessInterceptor和AcceptedByMethod,但无法读取我需要的参数。例如,我只需要在调用此方法时运行我的拦截器:@GET@Produces("application/json;charset=UTF8")@Interceptors(MyInterceptor.class)publicListlistByNa

java - 如何从拦截器发送响应,并停止进一步执行?

我有一个拦截器,在某种情况下我想向浏览器发送一个字符串响应,然后完全停止执行。我该怎么做? 最佳答案 如果要停止执行,重写preHandle方法,返回false。@OverridepublicbooleanpreHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler)throwsException{response.getWriter().write("something");returnfalse;}

java - 使用新的请求拦截器伪造客户端重试器?

我目前正在手动构建一个假装客户端并将拦截器传递给它进行授权。我想要一个更智能的重试器来处理一些响应代码。publicclassmyErrorEncoderextendsErrorDecoder.Default{@OverridepublicExceptiondecode(finalStringmethodKey,finalResponseresponse){if(response.status()==401){Stringtoken=refreshToken();//IwouldliketorefreshthetokenandEdittheclientreturnnewRetryabl

java - Hibernate 拦截器 - 为什么在 onSave 之后调用 onFlushDirty?

计划我正在使用Hibernate为一个小项目实现createDate和lastUpdate时间戳。我使用EmptyInterceptor并根据我发现的建议解决方案重载提供的方法here.除非有一点细节,否则该解决方案工作正常。我想添加一个列来指示对象是否已经更新。我知道我可以通过简单地比较两个创建和更新的时间戳是否存在差异来实现这一点,但我需要让这个字段指示有一个更新。我使用在存储新对象时调用的onSave方法将wasUpdated值设置为“N”,表示没有更新。在onFlushDirty()方法中,我将此值设置为“Y”。问题当我创建并持久化一个新对象时,我会指出createDate和l

java - 如何修改生成的SOAP请求?

我正处于创建输出拦截器并从SOAP消息中获取OuputStream的阶段。但是,如何在将SOAP信封发送到端点之前修改它呢?我想删除一些xml元素。 最佳答案 一种方法是获取文档并通过XSLT转换运行它。您可以通过调用在拦截器的handleMessage中获取文档@OverridepublicvoidhandleMessage(SoapMessagemessage)throwsFault{SOAPMessagesaaj=message.getContent(SOAPMessage.class);Documentdoc=saaj.ge

java - CXF/JAX-RS : Return Custom response from interceptor

我们需要在REST调用过程中出现异常时返回自定义的错误码和错误信息。我们已经创建了一个异常映射器提供程序,它适用于来自应用程序代码的异常。但是,当CXF代码发生异常时它不起作用(例如形成我编写的CustomValidationInterceptor)。例如,如果我使用无效的路径参数请求(例如无效的电话号码)。在这种情况下,我们需要以JSON格式返回自定义错误代码和错误消息,但即使我们创建了一个异常映射器提供程序来处理WebApplicationException,它也不起作用。有没有办法处理cxf拦截器的异常并返回对用户做出如下回应?{"errorDetail":{"errorCode

java - Struts2线程中的拦截器不安全吗?

据我所知,Struts2Action类是线程安全的,因为这些操作都放在值堆栈中。ValueStack又是ActionContext的一部分。由于ActionContext是线程本地的,因此存储在ActionContext中的值(包括值堆栈)对于每个线程都是唯一的。因此,Actions是线程安全的。但是考虑拦截器:它们真的很有用,它们为程序员做所有那些乏味的小工作......比如验证,获取参数值等。但要考虑的是:拦截器可以在多个之间共享要求。那么这是否会使拦截器线程不安全?带着这个问题,我试着上网找了一些与这个问题相关的好文章。我找到了一篇非常好的文章,他们在其中用示例清楚地提到了拦截器