小编Jin*_*won的帖子

EJB作为WebService context-root消失了

我正在使用JAX-WS开发一个项目.

当我使用@WebServiceWSDL 注释我的端点类时,在控制台中标记为

.../<context-root>/XXXService?wsdl
Run Code Online (Sandbox Code Playgroud)

当我添加@Stateless这些端点时,WSDL没有在控制台中标记,实际地址是

.../XXXService/XXXEndpoint?wsdl
Run Code Online (Sandbox Code Playgroud)

这是正常的还是预期的?

更新

进一步的读者.

我找不到任何解决方案.我决定不使用混合@Stateless+ @WebService.我将这些分开@EJB@WebServices进行清晰的模块分离.

web-services ejb glassfish jax-ws

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

分配零容量 ByteBuffer

谁能告诉我分配零长度缓冲区的可能目的是什么?

ByteBuffer.allocate(0); // no IllegalArgumentException
Run Code Online (Sandbox Code Playgroud)

为什么设计 API 的人会这样做?

感谢您的评论和回答。

我希望会有这样的更新。:)

ByteBuffer.allocate(0); // no IllegalArgumentException
Run Code Online (Sandbox Code Playgroud)

java nio bytebuffer

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

使用lambdas和流从字节数组中获取十六进制字符串的有效方法

这是如何从字节数组创建IntStream的后续问题

我创建了一个方法将给定的字节数组转换为连接的十六进制字符

static String bytesToHex(final byte[] bytes) {

    return IntStream.rang(0, bytes.length * 2)
        .map(i -> (bytes[i / 2] >> ((i & 0x01) == 0 ? 4 : 0)) & 0x0F)
        .mapToObj(Integer::toHexString)
        .collect(joining());
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,不使用任何第三方库,上面的代码是否足够有效?我做错了什么或不必要的吗?

lambda hex java-8 java-stream

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

还有什么允许非凡的java方法名称?

我知道$可以在Java中用作方法名.还有什么?

class MyClass {
    String $() {
        return "I've never been expected anyone would invoke me";
    }
}
Run Code Online (Sandbox Code Playgroud)

这实际上是一个实际问题.我正在寻找另一个$.

java jls

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

注释声明中String []的默认值是什么?

default ""部分在以下代码中的含义是什么?

public @interface MyAnnotation {
    String[] names() default "";
}
Run Code Online (Sandbox Code Playgroud)

它等于

String[] names() default new String[0];
Run Code Online (Sandbox Code Playgroud)

java annotations

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

如何处理重复的类型参数?

我有一个班级看起来像这样.

// just followed the T, U, V...
public class Some<T...., U....> {
}
Run Code Online (Sandbox Code Playgroud)

我需要添加一个像这样的实例方法.

    // not a static method
    // just followed from BiFunction<T, U, R>.class
    protected <U, R> R apply(final BiFunction<T, U, R> function,
                             final U u) {

    }
Run Code Online (Sandbox Code Playgroud)

T方法与T该类的方法相同.但是该U方法的方法不一定与U该类方法相同.

我应该换一个U吗?

换一种说法,

那两个U一样吗?

java generics type-parameter

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

未使用 Spring Webflux 路由器功能

我有以下配置

@Configuration
@EnableWebFlux
public class WebfluxConfig {

    @Bean
    RouterFunction<?> routerFunction(UserResource userResource) {
        return route(GET("/user"), r -> ok()
                .body(userResource.findAll(), UserDto.class));
    }
}
Run Code Online (Sandbox Code Playgroud)

当我启动应用程序时,它会进行预期的映射

2018-04-12 12:12:06.682 INFO 54617 --- [主要] oswrfssRouterFunctionMapping:映射/用户-> cnaicWebfluxConfig$$Lambda$764/909878836@14ba7f15

然而,当我尝试连接到它时,我得到了 404。并且路由器谓词没有被调用一次。

curl -v localhost:8080/user

*   Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 8080 (#0)

> GET /user HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.54.0
> Accept: */*
>

< HTTP/1.1 404
< Content-Type: application/json;charset=UTF-8
< Transfer-Encoding: chunked
< Date: Thu, 12 Apr 2018 09:15:52 GMT …
Run Code Online (Sandbox Code Playgroud)

java spring spring-boot spring-webflux

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

我应该选择哪个 graphql-spring-boot-starter?

我正在考虑将 GraphQL 功能添加到我的 Spring Boot 应用程序中。

我发现有两个工件。

一个是com.graphql-java-kickstart:graphql-spring-boot-starter,另一个是com.graphql-java:graphql-spring-boot-starter

我应该选择哪一个?

spring-boot graphql graphql-java

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

WeakReference 的罕见用法?

我有一个类,它的实例被底层 flatform 初始化和使用。

class MyAttributeConverter implements AttributeConverter<XX, YY> {

    public YY convertToDatabaseColumn(XX attribute) { return null; }

    public XX convertToEntityAttribute(YY dbData) { return null; }
}
Run Code Online (Sandbox Code Playgroud)

没有错,我想我需要添加一些静态方法以用作方法引用。

    private static MyAttributeConverter instance;

    // just a lazy-initialization;
    // no synchronization is required;
    // multiple instantiation is not a problem;
    private static MyAttributeConverter instance() {
        if (instance == null) {
            instance = new MyAttributeConverter();
        }
        return instance;
    }

    // do as MyAttributeConverter::toDatabaseColumn(xx)

    public static YY toDatabaseColumn(XX attribute) {
        return instance().convertToDatabaseColumn(attribute);
    }

    public static …
Run Code Online (Sandbox Code Playgroud)

java weak-references soft-references

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

什么是结构中的灵活数组成员?

我正在用 C 编写数组列表。

我针对通用标头定义了一个特定于实现的结构。

struct array_list_env {
    void **array;    // pointer to the array
    size_t capacity; // length of the array
    size_t size;     // number of occupied elements in the array
}
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试将其更改void **arrayvoid *array[]我得到的

错误:灵活的数组成员不在结构的末尾

什么是灵活数组成员?

c flexible-array-member

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