小编Tha*_*ssi的帖子

如何从数据库加载java类?

喜欢以下源代码:

package util.abc;
public class Test{
    public String out(){
        return "Hello World!";
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以用:

Class c = Class.forName("util.abc.Test");
Run Code Online (Sandbox Code Playgroud)

获取此类,但我必须将此源文件(Test.java)放在ClassPath中/util/abc/

我想从数据库动态加载这个类(将源代码存储为string,或binary)

这个有可能 ?

感谢帮助 :)

java

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

带有Spring Security的Amazon Cognito Oauth2

我正在尝试使用"Cognito Oauth2"在资源服务器中实现Spring Security,但是我似乎找不到太多信息.关于它(或者甚至可能这样做).

我最接近的方法是使用"Nimbus + JOSE"来检查"访问令牌"与"JWKS"的有效性,并授予访问资源的权限.(类似于他们在此处提供的"API网关资源保护实施"示例:https://aws.amazon.com/es/blogs/mobile/integrating-amazon-cognito-user-pools-with-api-gateway /)

非常感激您的帮忙.

谢谢!

java spring-security oauth-2.0 amazon-cognito

7
推荐指数
2
解决办法
6408
查看次数

如何使用node.js和aws-sdk从lambda访问aws参数存储

我创建了一个lambda和云形成模板,该模板向lambda授予对参数存储和秘密管理器的访问权限。当我测试lambda时,我在export.handler函数之外具有以下函数:

function getParameterFromStore(param){
    let promise = new Promise(function(resolve, reject){
        console.log('++ ' + param.Path);
        servmgr.getParametersByPath(param, function(err, data){
            if(err){
                reject(console.log('Error getting parameter: ' + err, err.stack));
            } else {
                resolve(data);
            }
        });
    });

   let parameterResult = promise.then(function(result){
    console.log('---- result: '+ JSON.stringify(result));
        return result;
    });
   return parameterResult;
};
Run Code Online (Sandbox Code Playgroud)

servmgr 被实例化为 var servmgr = new AWS.SSM();

当我从export.handler函数调用此函数时,我这样做是:

myFirstParam =  { Path : '/myPath/Service/servicesEndpoint'};

let endpointResult = getParameterFromStore(myFirstParam);
Run Code Online (Sandbox Code Playgroud)

在lambda中,我有一个函数来检索包装在promise中的export.handler函数bt之外定义的参数。

当我运行/测试此lambda时,返回的对象始终是未定义的……我得到Parameters [],但没有值。

2019-02-20T21:42:41.340Z    2684fe88-d552-4560-a477-6761f2de6717    ++ /myPath/Service/serviceEndpoint
2019-02-20T21:42:41.452Z    2684fe88-d552-4560-a477-6761f2de6717    ---- result: {"Parameters":[]}
Run Code Online (Sandbox Code Playgroud)

如何在运行时如何将参数值返回给lambda?

更新

基于Thales的建议/答案,我将lambda简化为:

const getParameterFromStoreAsync …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services promise aws-lambda aws-parameter-store

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

BatchWriteItem 操作:提供的关键元素与架构不匹配

我正在尝试使用 AWS Lambda 函数将 csv 数据从 S3 写入 DynamoDB。我目前收到以下错误“BatchWriteItem 操作:提供的关键元素与架构不匹配”。

有没有快速解决这个问题的方法?

import boto3

s3 = boto3.client('s3')
dynamodb = boto3.resource('dynamodb')

def csv_reader(event, context):

    bucket = event['Records'][0]['s3']['bucket']['name']
    key = event['Records'][0]['s3']['object']['key']

    obj = s3.get_object(Bucket=bucket, Key=key)

    rows = obj['Body'].read().split('\n')

    table = dynamodb.Table('customer_id')

    with table.batch_writer() as batch:
        for row in rows:
            batch.put_item(Item={

                'Customer-ID':row.split(',')[0],
                'Name':row.split(',')[1]
            })
Run Code Online (Sandbox Code Playgroud)

错误看起来像这样:

调用 BatchWriteItem 操作时发生错误 (ValidationException):提供的关键元素与架构不匹配:ClientError Traceback(最近一次调用最后一次):

文件“/var/task/lambda_function.py”,第 22 行,在 csv_reader 'Name':row.split(',')[1]

文件“/var/runtime/boto3/dynamodb/table.py”,第 156 行,退出 self._flush()

文件“/var/runtime/boto3/dynamodb/table.py”,第 137 行,在 _flush RequestItems={self._table_name: items_to_send})

文件“/var/runtime/botocore/client.py”,第 314 行,在 _api_call 中返回 self._make_api_call(operation_name, kwargs)

文件“/var/runtime/botocore/client.py”,第 …

amazon-s3 amazon-web-services python-2.7 amazon-dynamodb

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

消息发布到 SQS 时如何触发 lambda?

我正在尝试实现将在消息发布到 SQS 时触发的 lambda1。我能够将消息发送到 SQS 队列并接收消息。我创建了 SQS lambda 模板如下:

  GetPatientStatusSQS:
    Type: AWS::SQS::Queue
    Properties:
      MaximumMessageSize: 1024
      QueueName: !Sub "${EnvironmentName}-GetPatientStatusSQS"
      VisibilityTimeout: 30
Run Code Online (Sandbox Code Playgroud)

我查看了 aws 文档,但找不到任何示例显示当消息发布到 SQS 队列时如何触发 lambda。

我找到了这个链接Can an AWS Lambda function call another但不确定这是否有帮助。

我如何更新上面的 SQS 模板以触发 lambda1?

amazon-web-services aws-lambda aws-sam

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

\ x {..}和\ N {U + ..}之间有区别吗

在打印声明中使用\x{..}\N{U+..}在打印声明中有区别吗?对我来说,它们看起来像做同一件事的两种方式。那么有什么区别-如果有的话?

perl

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