小编Gre*_*zak的帖子

Spring security 5:为 OAuth2 身份验证用户提供角色

我有带有 Spring Security 5 和 OAuth2 客户端的现有 Spring Boot 应用程序,我已经成功配置了外部 OAuth2 提供程序(在我的例子中是 GitLab)的身份验证。

现在我在配置授权时遇到问题。我想要一些方法,让我编写代码来解析给定用户的角色(通​​过调用数据库或仅检查硬编码的用户名)。

我发现它可以通过使用PrincipalExtractorand来实现AuthoritiesExtractor,在一篇很好的文章中进行了描述。然而,这些类在最近的 Spring Security 中不再存在。与 Spring Security 5 兼容的替代方法是什么?

spring spring-security spring-security-oauth2

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

javascript相当于sed

我想修剪弦,例如.

铅笔(4,99 USD)

只是一个括号数值:

4,99

我现在有点关于sed中的正则表达式,所以我这样做:sed "s#.*(##" | sed "s# USD.*##".但是我应该如何在javascript replace函数中使用任何正则表达式?

javascript regex

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

JavaEE Wildfly EJB没有注入,只有war-only项目

我是JavaEE的新手,我创建了一个"hello world"项目,使用Hibernate作为JPA提供程序,使用gradle构建并部署到Wildfly.我想将@Statelessbean用于数据库感知类,它将对DB执行所有操作,然后将其注入包含REST端点的所有"JAX-RS"类.

数据库类:

@Stateless
public class DatabaseManager {

    @PersistenceContext
    EntityManager entityManager;

    public DatabaseManager() {
    }

    public String sayHello() {
        // do some db-stuff
        return "EHLO";
    }
}
Run Code Online (Sandbox Code Playgroud)

REST类:

@Path("/")
@SessionScoped
public class RestMainEndpoint implements Serializable {

    @EJB
    private DatabaseManager databaseManager;

    public RestMainEndpoint() {
    }

    @GET
    @Path("/hello")
    @Produces("text/plain")
    public String helloFromDb() {
        return databaseManager.sayHello();
    }
}
Run Code Online (Sandbox Code Playgroud)

问题@EJB private DatabaseManager databaseManager;始终存在null.它永远不会被注入.

我知道REST正在运行,因为所有非数据库相关的端点都正常工作.我还假设DatabaseManagerbean已创建并初始化,因为我可以在Wildfly管理面板上看到它.

Wildfly管理面板屏幕截图

我不确定我是否正确打包和部署它 - 所有这些都是打包到单个war部署的.我是否有必要使用 …

ear war javabeans java-ee wildfly

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

linux查找命令不必要的数据

我正在尝试编写简单的bash脚本而且我遇到了find命令.

当我输入时find . zad*,我得到如下输出:

.
./lab2.sh~
./#zad2.sh#
./zad2.sh~
./zad1a.sh
./zad2.sh
./lab2.sh
./Azad2.sh~
./cdlinux.ftp.log
./Azad2.sh
./zad1a.sh~
./zad1.sh
./cdlinux.www.log
./zad1.sh~
zad1a.sh
zad1a.sh~
zad1.sh
zad1.sh~
zad2.sh
zad2.sh~
Run Code Online (Sandbox Code Playgroud)

为什么它列出我文件夹中的所有文件(./文件名之前),然后我得到正确的查找结果.有没有办法删除该./输出?使用sed命令在所有情况下都不起作用(当搜索路径不同时.).

linux bash find

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

C/C++用一个值填充struct数组

我想用相同的值填充MyStruct数组.如何以最快和最简单的方式完成?我正在运行相当低级的方法,比如memsetmemcpy.

编辑:std::fill_n确实符合并且工作正常.但它是C++的方式.如何在纯C中完成?

struct MyStruct
{
    int a;
    int b;
};

void foo()
{
    MyStruct abc;
    abc.a = 123;
    abc.b = 321;

    MyStruct arr[100];
    // fill 100 MyStruct's with copy of abc
    std::fill_n(arr, 100, abc); // working C++ way

    // or maybe loop of memcpy? But is it efficient?
    for (int i = 0; i < 100; i++)
        memcpy(arr[i],abc,sizeof(MyStruct));
}
Run Code Online (Sandbox Code Playgroud)

c c++ memory struct memcpy

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

Docker 在 ecr 上编写:错误:没有这样的服务:--build-arg

我尝试在此命令中将 arg 传递到 docker 构建过程中:

docker-compose -f .docker/docker-compose.ecr.yml build my-app --build-arg BUILD_VERSION=5.0.0
Run Code Online (Sandbox Code Playgroud)

但我得到了错误:

ERROR: No such service: --build-arg
Run Code Online (Sandbox Code Playgroud)

根据文档docker-compose 有build-arg参数。

.yml 文件:

version: '3'

services:
  my-app:
    image: 3144.dkr.ecr.us-east-2.amazonaws.com/my-app:latest
    build:
      context: ../
      dockerfile: ./.docker/Dockerfile
Run Code Online (Sandbox Code Playgroud)

可能是什么问题?

amazon-ecs docker docker-compose amazon-ecr

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