【问题标题】:Grails, connecting to S3 using jets3tGrails,使用 jets3t 连接到 S3
【发布时间】:2013-05-15 22:05:23
【问题描述】:

我正在尝试使用“JetS3t”连接到 Amazon S3 存储桶,我也在使用 Quartz 插件, 我在 grails-app/jobs 有一份工作,我喜欢在其中访问 S3,但在第二行出现错误:

AWSCredentials awsCredentials = new AWSCredentials(grailsApplication.config.s3.accessKey, grailsApplication.config.s3.secretKey)

S3Service s3Service = new RestS3Service(awsCredentials)

这是错误:

ERROR listeners.ExceptionPrinterJobListener  - Exception occurred in job: null
Message: java.lang.NoClassDefFoundError: com/jamesmurty/utils/XMLBuilder

我是否必须创建服务并在那里设置我的 S3?

【问题讨论】:

    标签: grails amazon-s3 quartz-scheduler jets3t


    【解决方案1】:

    这对我有用:

    def aws_credentials = {
            return new AWSCredentials(grailsApplication.config.aws.accessKey, grailsApplication.config.aws.secretKey)
        }
    
        def s3_service = {
            return new RestS3Service(aws_credentials())
        }
    
        def test = {
            def buckets = s3_service().listAllBuckets()
            System.out.println("How many buckets to I have in S3? " + myBuckets.length);
        }
    

    当然,您不必将对象放在多个方法中,随心所欲地使用它们。

    还要确保你有这些导入:

    import org.jets3t.service.impl.rest.httpclient.RestS3Service
    import org.jets3t.service.security.AWSCredentials
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多