Amazon web services 列出route53中托管区域的资源记录集,给出一个非常奇怪的错误

Amazon web services 列出route53中托管区域的资源记录集,给出一个非常奇怪的错误,amazon-web-services,groovy,amazon-route53,Amazon Web Services,Groovy,Amazon Route53,我的目的是列出所有托管区域中可用的所有记录。我创建了一个ListResourceRecordSetRequestBuilder对象,并将其通过response方法来检索所有资源记录,但由于某种原因,我得到了一个错误 我的代码出错并导致错误: 以def response=..开头的行表示出现错误 ArrayList<ResourceRecordSet> getResourceRecords(HostedZone hostedZone){ def request = L

我的目的是列出所有托管区域中可用的所有记录。我创建了一个ListResourceRecordSetRequestBuilder对象,并将其通过response方法来检索所有资源记录,但由于某种原因,我得到了一个错误

我的代码出错并导致错误:

def response=..
开头的行表示出现错误

ArrayList<ResourceRecordSet> getResourceRecords(HostedZone hostedZone){

        def request = ListResourceRecordSetsRequest.builder().hostedZoneId(hostedZone.id()).maxItems("1000").build()
        def response = route53Client.listResourceRecordSets(request as Consumer<ListResourceRecordSetsRequest.Builder>)
        return response.resourceRecordSets()
    }

ArrayList getResourceRecords(HostedZone HostedZone){
def request=ListResourceRecordSetRequest.builder().hostedZoneId(hostedZone.id()).maxItems(“1000”).build()
def response=route53Client.ListResourceRecordset(作为消费者请求)
返回响应。resourceRecordSets()
}
错误:

groovy.lang.MissingMethodException:没有方法签名:software.amazon.awssdk.services.route53.model.ListResourceRecordSetRequest.accept()适用于参数类型:(software.amazon.awssdk.services.route53.model.ListResourceRecordSetRequest$BuilderImpl)值:[software.amazon.awssdk.services.route53.model.ListResourceRecordSetRequest$BuilderImpl@56eafaa0]


我提前感谢您的帮助!

您使用的是什么AWS SDK-V2?我刚刚在AWS Java V2 API中进行了测试,效果很好

完整的JavaV2示例

import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.route53.Route53Client;
import software.amazon.awssdk.services.route53.model.*;

import java.util.List;

public class ListResourceRecordSets {

    public static void main(String[] args) {

        Region region = Region.AWS_GLOBAL;
        Route53Client route53Client = Route53Client.builder()
                .region(region)
                .build();

        listResourceRecord(route53Client);
        route53Client.close();
    }

    public static void listResourceRecord(Route53Client route53Client) {

        try {

            ListResourceRecordSetsRequest request = ListResourceRecordSetsRequest.builder()
                    .hostedZoneId("XXXXX5442QZ69T8EEX5SZ")
                    .maxItems("12")
                    .build();

            ListResourceRecordSetsResponse listResourceRecordSets = route53Client.listResourceRecordSets(request);
            List<ResourceRecordSet> records = listResourceRecordSets.resourceRecordSets();

            for (ResourceRecordSet record : records) {
                System.out.println("The Record name is: " + record.name());

            }

        } catch (Route53Exception e) {
            System.err.println(e.getMessage());
            System.exit(1);
        }
    }
}
import software.amazon.awssdk.regions.Region;
导入software.amazon.awssdk.services.route53.route53客户端;
导入software.amazon.awssdk.services.route53.model.*;
导入java.util.List;
公共类ListResourceRecordset{
公共静态void main(字符串[]args){
Region Region=Region.AWS_GLOBAL;
Route53客户端Route53客户端=Route53客户端.builder()
.地区(地区)
.build();
listResourceRecord(路由53客户端);
Route53客户端。关闭();
}
公共静态无效列表资源记录(Route53客户端Route53客户端){
试一试{
ListResourceRecordSetRequest=ListResourceRecordSetRequest.builder()
.hostedZoneId(“XXXXX 5442QZ69T8EEX5SZ”)
.maxItems(“12”)
.build();
ListResourceRecordSetResponse listResourceRecordSets=route53Client.listResourceRecordSets(请求);
列表记录=listResourceRecordSets.resourceRecordSets();
for(资源记录集记录:记录){
System.out.println(“记录名为:”+Record.name());
}
}捕获(路由53E异常){
System.err.println(e.getMessage());
系统出口(1);
}
}
}