我正在尝试将Spring Data REST文档中描述的RepositoryEventHandler添加到下面显示的REST存储库:
@RepositoryRestResource(collectionResourceRel = "agents", path = "/agents")
public interface AgentRepository extends CrudRepository<Agent, Long> {
    // no implementation required; Spring Data will create a concrete Repository
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个AgentEventHandler:
@Component
@RepositoryEventHandler(Agent.class)
public class AgentEventHandler {
    /**
     * Called before {@link Agent} is persisted 
     * 
     * @param agent
     */
    @HandleBeforeSave
    public void handleBeforeSave(Agent agent) {
        System.out.println("Saving Agent " + agent.toString());
    }
}
Run Code Online (Sandbox Code Playgroud)
并在@Configuration组件中声明它:
@Configuration
public class RepositoryConfiguration {
    /**
     * Declare an instance of the {@link AgentEventHandler}
     *
     * …Run Code Online (Sandbox Code Playgroud) 我最近开始学习Spring Security,今天我踩到了这个基本的(我相信)问题:为什么我不能访问Servlet过滤器中的当前Principal,如下面的类所示:
package com.acme.test;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Component;
@Component
public class TestFilter implements Filter {
    /*
     * (non-Javadoc)
     * 
     * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
     */
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        // TODO Auto-generated method stub
    }
    /*
     * (non-Javadoc)
     * 
     * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
     * javax.servlet.ServletResponse, javax.servlet.FilterChain)
     */
    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        SecurityContext …Run Code Online (Sandbox Code Playgroud) 我正在开发一个需要并发的Java守护进程:一个无限循环,它监听作业队列(redis)并将每个作业分配给一个worker.工作人员不一定要返回值.
我发现Executors非常有用,我使用ThreadPoolExecutor来维护许多工作线程.
但是,这些工作者运行的第三方代码需要尽可能隔离,避免共享静态属性.
我的问题:是否有任何Java库/框架提供类似于Executors的功能,例如:
..但产生进程而不是线程?
将无效的 JSON 发布到 Spring Data REST(版本 2.2.2)资源时,会抛出 HttpMessageNotReadableException 并返回以下 json:
{
    "cause": {
        "cause": {
            "cause": null,
            "message": "Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using backslash to be included in string value\n at [Source: org.apache.catalina.connector.CoyoteInputStream@646d9de6; line: 2, column: 20]"
        },
        "message": "Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using backslash to be included in string value\n at [Source: org.apache.catalina.connector.CoyoteInputStream@646d9de6; line: 2, column: 20] (through reference chain: gr.bytecode.exceptionhandling.domain.Book[\"name\"])"
    },
    "message": "Could not read JSON: …Run Code Online (Sandbox Code Playgroud) 我正在使用 Spring Boot 1.1.5.RELEASE 构建一个 Web 应用程序,并按照相关 Spring Boot 文档中的描述配置了一个嵌入式 Jetty 。
我想记录所有传入的 HTTP 请求,我能想到的唯一解决方案(在阅读Spring Boot 文档中的“如何配置 Jetty”之后)是引入一个 EmbeddedServletContainerCustomizer:
package com.acme.rest;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.NCSARequestLog;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.DefaultHandler;
import org.eclipse.jetty.server.handler.HandlerCollection;
import org.eclipse.jetty.server.handler.RequestLogHandler;
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.boot.context.embedded.jetty.JettyEmbeddedServletContainerFactory;
import org.springframework.boot.context.embedded.jetty.JettyServerCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
/**
 * blah blah
 * 
 * @author Dimi
 */
@Component
public class EmbededJettyConfig implements EmbeddedServletContainerCustomizer {
    /*
     * (non-Javadoc)
     * 
     * @see org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer # customize
     */
    @Override
    public void customize(final …Run Code Online (Sandbox Code Playgroud) spring-mvc ×3
java ×2
spring ×2
concurrency ×1
jetty ×1
servlets ×1
spring-boot ×1
spring-data ×1
threadpool ×1