小编Viv*_*ngh的帖子

<T>的Mockito.any()

我想用签名模拟一个方法:

    public <T> T documentToPojo(Document mongoDoc, Class<T> clazz)
Run Code Online (Sandbox Code Playgroud)

我嘲笑它如下:

    Mockito.when(mongoUtil.documentToPojo(Mockito.any(Document.class), Mockito.any(WorkItemDTO.class)))
Run Code Online (Sandbox Code Playgroud)

但我得到的错误是:

documentToPojo(Document, Class<T>)类型中的方法MongoUtil不适用于参数(Document, WorkItemDTO)

Mockito有什么方法可以帮我模拟T吗?

java unit-testing mockito mongodb-java springmockito

23
推荐指数
2
解决办法
6万
查看次数

java + spring security oauth令牌未返回,找不到404页面

每个人,我都知道已经有类似问题的解决方案,但这个问题是不同的.

我也阅读了目前的链接,但解决方案并不适用于我.

我的问题是我正在尝试oauth2.0使用spring-security-oauth2库版本来保护我的Java + Spring + Jersey Web服务应用程序.

每当我调用/oauth/token应用程序验证header(client_secret, client_id and grant_type)下提供的详细信息时,客户端都会成功通过身份验证,但不会从服务器返回令牌数据,而是显示404页面未找到的响应.

这是以下配置:

  1. web.xml中

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://java.sun.com/xml/ns/javaee"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        version="2.5">
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>WEB-INF/spring/dispatcher-servlet.xml</param-value>
        </context-param>
    
        <servlet>
            <servlet-name>jersey-servlet</servlet-name>
            <servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
            <init-param>
                <param-name>com.sun.jersey.config.property.packages</param-name>
                <param-value>com.tprivity.babycenter.ws</param-value>
            </init-param>
            <init-param>
                <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
                <param-value>true</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>jersey-servlet</servlet-name>
            <url-pattern>/*</url-pattern>
        </servlet-mapping>
    
        <filter>
            <filter-name>springSecurityFilterChain</filter-name>
            <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>springSecurityFilterChain</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    </web-app>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 调度员servlet.xml中

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:oauth2="http://www.springframework.org/schema/security/oauth2"
        xmlns:p="http://www.springframework.org/schema/p" xmlns:security="http://www.springframework.org/schema/security"
        xmlns:tx="http://www.springframework.org/schema/tx" …
    Run Code Online (Sandbox Code Playgroud)

java spring oauth spring-mvc spring-security

7
推荐指数
1
解决办法
4190
查看次数

在将参数传递给Bean时,没有找到类型[java.lang.String]的限定bean用于依赖项

我正在研究Spring并尝试创建bean并将参数传递给它.Spring配置文件中的bean看起来像:

@Bean
@Scope("prototype")
public InputFile inputFile (String path)
{
    InputFile inputFile = new InputFile();
    inputFile.setPath(path);
    return inputFile;
}
Run Code Online (Sandbox Code Playgroud)

InputFile类是:

public class InputFile {
    String path = null;
    public InputFile(String path) {
        this.path = path;
    }
    public InputFile() {

    }
    public String getPath() {
       return path;
    }
    public void setPath(String path) {
        this.path = path;
    }
}
Run Code Online (Sandbox Code Playgroud)

在主要方法中我有:

InputFile inputFile = (InputFile) ctx.getBean("inputFile", "C:\\");
Run Code Online (Sandbox Code Playgroud)

C:\\ - 是我试图传递的参数.

我运行应用程序并收到root异常:

org.springframework.beans.factory.NoSuchBeanDefinitionException:通过引起[java.lang.String中]找到依赖性否类型的排位豆:预期至少1种豆,其有资格作为自动装配候选这种依赖性.依赖注释:{}

我做错了什么以及如何解决它?

java spring

5
推荐指数
1
解决办法
2万
查看次数

Spring Security Logout不适用于Spring 4 CORS

最近我在Spring 4中尝试了新的内置CORS-Support.这个功能很棒,我想在Spring Boot/AngularJS应用程序中实现它.

所有请求都正常但我无法注销我的用户,因为OPTIONS-Request to /logoutSpring Security处理.

是否有可能处理OPTIONS之前-请求的Spring Security或者我应该附上CORS报头LogoutSuccessHandler

java spring spring-mvc spring-security angularjs

4
推荐指数
1
解决办法
3869
查看次数

Java摆动应用程序在~HiDpi~计算机中太小了

我有一个使用java swing的java桌面应用程序,它可以正常显示.

但是当来到~hiDpi~显示器(3200*1800)时整个应用程序太小了.

由于应用程序代码非常庞大且复杂,因此很难重新排列代码以匹配hi dpi.有这个问题的解决方案吗?

我已经看到像IntelliJ想法这样的应用程序,并且eclipse可以很好地使用这种显示而没有问题.感谢任何帮助.

java swing intellij-idea hdpi

2
推荐指数
1
解决办法
4731
查看次数

Java中的函数编程语法

我正在阅读有关函数式编程及其在Java中的实现的内容.我遇到的这个例子与Java中的面向对象编程有一些不同的语法.功能编程是否有一些不同的语法?

public class Hello {
    Runnable r1 = ()->(System.out.println(this);};
    Runnable r2 = ()->(System.out.println(toString());};
    public String toString(){ return “Howdy!”;}
    public static void main(String args) {
        new Hello().r1.run();
        new Hello().r2.run();
    }
Run Code Online (Sandbox Code Playgroud)

在完成代码之后,我可以理解括号不匹配,语法与OOP的Java语法不相似.

此代码无法编译并在所有行上给出以下错误:

Hello.java:19: error: class, interface, or enum expected
Runnable r2 = ()->(System.out.println(toString());};
Run Code Online (Sandbox Code Playgroud)

我错过了什么?如果这个程序是正确的,它会打印什么?我在Ubuntu 14.04.3上使用javac 1.8.0_66

谢谢.

java functional-programming runnable

1
推荐指数
1
解决办法
112
查看次数

Java线程通信

在 java Thread 中,我可以使用wait()和轻松地在两个线程之间进行通信notify()

但是假设我有 10 个线程在运行 say T1toT10并且我希望 threadT2与 thread 进行通信T7

我怎么能做到这一点?一些例子将不胜感激。

java multithreading jakarta-ee

1
推荐指数
1
解决办法
883
查看次数