小编Bud*_*dha的帖子

AWS StepFunction 使用云形成调用子工作流状态

我正在尝试创建一个可以调用另一个状态机的状态机。我尝试使用以下方法来获取 ARN。但是,这会返回错误 Arn is not a valid property,正在创建哪个堆栈。

  ParentStateMachine:
    Type: "AWS::StepFunctions::StateMachine"
    Properties:
      StateMachineName: !Sub "ParentStateMachine"
      DefinitionString:
        Fn::Sub:
         - |-
            {
              "Comment": "...",
              "StartAt": "State1",
              "States": {
                "State1": {
                  "Type": "Task",
                  "Resource": "arn:aws:states:::states:startExecution.sync",
                  "Parameters": {
                    "StateMachineArn": "${ChildStateMachineArn}",
                    "Input": {
                      "StatePayload": {
                        "datasetDate.$": "$.datasetDate"
                      },
                      "AWS_STEP_FUNCTIONS_STARTED_BY_EXECUTION_ID.$": "$$.Execution.Id"
                    }
                  },
                  "End": true
                }
              }
            }
         -  {
               ChildStateMachineArn:
                 Fn::GetAtt:
                   - ChildStateMachine
                   - Arn
            }
      RoleArn:
        Fn::GetAtt:
          - StatesExecutionRole
          - Arn
Run Code Online (Sandbox Code Playgroud)

我还尝试使用此字符串生成 ARN。

arn:aws:states:${AWS::Region}:${AWS::AccountId}:stateMachine:ChildStateMachine
Run Code Online (Sandbox Code Playgroud)

但是,这给出了错误

Failed to call Step Functions for request: 'com.amazonaws.services.stepfunctions.model.CreateStateMachineRequest'. (Service: …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cloudformation aws-step-functions

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

为什么 XPath.evaluate 返回 NULL?

当我使用以下代码修改 xml 文件时,我收到此错误:

Exception in thread "main" java.lang.NullPointerException
    at ModifyXMLFile.updateFile(ModifyXMLFile.java:44)
    at ModifyXMLFile.main(ModifyXMLFile.java:56)
Run Code Online (Sandbox Code Playgroud)

错误发生在行:node.setTextContent(newValue);

我没有正确使用 xpath 吗?

这是我尝试更新的代码和 xml 文件

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpression;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;

import org.apache.commons.io.FileUtils;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;

public class ModifyXMLFile {

    public void updateFile(String newValue){

        XPathFactory …
Run Code Online (Sandbox Code Playgroud)

java xml xpath

3
推荐指数
2
解决办法
6469
查看次数

如何使用JBOSS Forge API将父POM添加到POM

我正在创建一个以编程方式更新现有POM的插件,我可以使用DependencyFacet,MavenFacet等添加依赖项,存储库和各种其他信息.但是,我无法弄清楚如何添加父POM.以下是我尝试的代码,但它不起作用.关于我可以使用哪个方面以及使用它的语法是什么帮助.

 Parent p = new Parent();
 p.setGroupId("org.example");
 p.setArtifactId("application-master-pom");
 p.setVersion("1.1.0");
 MavenFacet mavenFacet = getFaceted().getFacet(MavenFacet.class);
 mavenFacet.getModel().setParent(p);
Run Code Online (Sandbox Code Playgroud)

但是,父POM引用未添加到执行我正在创建的命令的项目pom中.

java maven jboss-forge

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

如何使用Reflection来调用一个在C#中将字符串数组作为参数的方法

我有一个如下所示的方法......

public bool MakeRequest(string[] args)
    {
        try
        {
            sXmlRequest = args[0];
            sResponse = "";
            Console.WriteLine(sXmlRequest);
            sw.Write(sXmlRequest);
            sw.Flush();
            sResponse = sr.ReadToEnd();
            return true;
        }
        catch (Exception e)
        {
            sResponse = e.Message;
            return false;
        }

    }
Run Code Online (Sandbox Code Playgroud)

我必须使用Reflection调用此方法,因为整个框架的设置方式.

这是我用来调用它的代码

string[] innerargs = {"Dummy Args"};
string pAssembly = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\TCPConnector.dll";
Assembly assemblyInstance = Assembly.LoadFrom(pAssembly);
Type tConnector = assemblyInstance.GetType("Fit.TcpConnector");
Object oLateBound = assemblyInstance.CreateInstance(tConnector.FullName);

result = tConnector.InvokeMember("MakeRequest", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Instance, null, oLateBound, innerargs);
Run Code Online (Sandbox Code Playgroud)

这将返回MissingMethodException,表示找不到方法Fit.TcpConnector.MakeRequest.

但是,如果我将MakeRequest的签名更改为

  public bool MakeRequest(string args)
Run Code Online (Sandbox Code Playgroud)

代替

  public bool MakeRequest(string[] …
Run Code Online (Sandbox Code Playgroud)

c# arrays reflection parameters system.reflection

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

使用 Jackson 将不同类型反序列化为单个字段

我有一个以下类,我想用它来反序列化 JSON

public interface MyObject {

    @JsonProperty("prop")
    String prop;

    @JsonProperty("value")
    Double value();        // Need this to be either a double or a string or a Map
}
Run Code Online (Sandbox Code Playgroud)

但是,我希望能够用双值解析 JSON

{
  prop: "myprop",
  value: 15.7
}
Run Code Online (Sandbox Code Playgroud)

和具有非 Double 值的 JSON,如字符串或地图

{
  prop: "myprop1",
  value: {
    "attr1": "value1",
    "attr2": 12.0
  }
}
Run Code Online (Sandbox Code Playgroud)

我查看了@JsonSubTypes注释,但这看起来只对涉及继承的情况有用。可以在杰克逊做吗?如果是这样,我如何定义我的 Java 类来实现相同的目标?

java json jackson json-deserialization

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

是否可以禁用ATG的dynadmin登录?

我们经常使用ATG的发电机管理来测试对各种其他组件所做的更改.有没有办法禁用登录才能打开Dynamo Administration?我们多次观察到它多次询问凭据.任何猜测为什么它这样做以及如何避免这种情况?

atg

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

ATG中自定义表单处理程序的错误处理

我是ATG的新手.我正在尝试使用自己的RepositoryFormHandler.但我无法对表单进行验证.

这是我的.java文件:

public class MyLoginBean extends RepositoryFormHandler {

    private String logname;
    private String logpwd;
    private String message;

    public String getLogname() {
        return logname;
    }

    public void setLogname(String logname) {
        this.logname = logname;
    }

    public String getLogpwd() {
        return logpwd;
    }

    public void setLogpwd(String logpwd) {
        this.logpwd = logpwd;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public boolean handleLogname(DynamoHttpServletRequest pRequest,
            DynamoHttpServletResponse pResponse) throws ServletException,
            IOException {
        boolean tf=true;
        if(logname.isEmpty() || logname==null) …
Run Code Online (Sandbox Code Playgroud)

java atg

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

以下程序输出的说明

看看节目 -

#include<stdio.h>
int main()
{
    int x=2, y=6, z=6;
    x = y == z;
    printf("%d",x);
}
Run Code Online (Sandbox Code Playgroud)

我认为输出是6.我认为z的值是6,z等于y.因此y具有值6.并且y(该值为6)被分配给x.所以我认为答案应该是6.但是在执行时我发现答案是1.任何人都可以解释,为什么1是这个程序的输出?

c

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