【发布时间】:2015-08-12 22:26:17
【问题描述】:
我正在尝试遵循 this AWS 教程。但是我在“此时您可以成功运行 GreeterWorker”时遇到了麻烦。因为我收到了 UnknownResourceException。
Exception in thread "main" com.amazonaws.services.simpleworkflow.model.UnknownResourceException: Unknown domain: helloWorldWalkthrough (Service: AmazonSimpleWorkflow; Status Code: 400; Error Code: UnknownResourceFault; Request ID: xxxxx)
采取的步骤
- 通过将
SimpleWorkflowFullAccessIAM 策略附加到我的 AWS 用户解决了权限异常。 - 已验证 helloWorldWalkthrough 已在 SWF 仪表板上注册
- 注册了新的 helloWorldWalkthrough2 域,出现同样的错误
本教程没有介绍将 SimpleWorkflowFullAccess 策略附加到 AWS 用户的步骤,所以我想知道是否有类似的未记录步骤允许我的用户找到此域。
我的代码是从教程中的 GreeterWorker 类复制/粘贴的。
import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.simpleworkflow.AmazonSimpleWorkflow;
import com.amazonaws.services.simpleworkflow.AmazonSimpleWorkflowClient;
import com.amazonaws.services.simpleworkflow.flow.ActivityWorker;
import com.amazonaws.services.simpleworkflow.flow.WorkflowWorker;
public class GreeterWorker {
public static void main(String[] args) throws Exception {
ClientConfiguration config = new ClientConfiguration().withSocketTimeout(70*1000);
String swfAccessId = System.getenv("AWS_ACCESS_KEY_ID");
String swfSecretKey = System.getenv("AWS_SECRET_KEY");
AWSCredentials awsCredentials = new BasicAWSCredentials(swfAccessId, swfSecretKey);
AmazonSimpleWorkflow service = new AmazonSimpleWorkflowClient(awsCredentials, config);
service.setEndpoint("https://swf.us-east-1.amazonaws.com");
String domain = "helloWorldWalkthrough";
String taskListToPoll = "HelloWorldList";
ActivityWorker aw = new ActivityWorker(service, domain, taskListToPoll);
aw.addActivitiesImplementation(new GreeterActivitiesImpl());
aw.start();
WorkflowWorker wfw = new WorkflowWorker(service, domain, taskListToPoll);
wfw.addWorkflowImplementationType(GreeterWorkflowImpl.class);
wfw.start();
}
}
【问题讨论】:
-
您是否检查过控制台和 Java 客户端使用相同的区域?
-
本教程使用硬编码端点。如果有指示为您使用的任何区域编辑该行,我错过了它。我只是使用默认值,从未想过要检查。
-
@gridDragon 如果您找到了解决方案,请您把它放在这里,以便其他人受益。谢谢。
标签: java amazon-web-services amazon-swf