Atividades
Mais recente
falso
- Visão geral
- Criptografia
- Banco de Dados
- Java
- Notas de versão
- Sobre o pacote de atividades Java
- Compatibilidade do projeto
- Execução de métodos estáticos e de objeto
- Python
- WebAPI
Execução de métodos estáticos e de objeto
Atividades de Desenvolvedor
Última atualização 23 de abr de 2024
Execução de métodos estáticos e de objeto
To exemplify how to use this activity package, we have built an automation process which showcases its capabilities of running both static and object methods, split into two parts:
- Para a primeira parte, uma biblioteca Java é inicializada usando a atividade Java Scope e, em seguida, um arquivo
.jar
contendo o código Java é carregado usando Load Jar. Um método estáticogetArrayInt
é executado usando a atividade Invoke Java Method , retornando uma matriz de números inteiros e armazenando-a em um tipo de dados personalizadoJavaObject
. Em seguida, usando a atividade Converter objeto Java , oJavaObject
é convertido em uma matriz .NET de inteiros - uma variávelInt32[]
. Cada valor que ele contém é gravado no painel Output por meio de uma atividade For Each . Isso mostra como é fácil alternar entre tipos de dados Java e .NET específicos e, em seguida, manipular seus valores da maneira que desejar. - Na segunda parte, dentro do mesmo Java Scope mencionado acima, uma atividade Create Java Object é utilizada para criar outro
JavaObject
contendo uma classeCoordinate
. Usando outra atividade Invoke Java Method , o métodogetCoordinateSum
é executado. Os métodos de objeto podem ser chamados de forma semelhante aos métodos estáticos, mas, em vez de usar o TargetType, desta vez a propriedade TargetObject é usada, pois agora estamos utilizando uma variávelJavaObject
em vez de uma matriz de números inteiros. O método retorna seus valores em um terceiroJavaObject
e é convertido de volta em uma variável .NETDouble
usando outra atividade Convert Java Object . A etapa final é exibir uma caixa de mensagem que contém o valor na variávelDouble
.
É assim que a demonstração pode ser construída:
- Abra o Studio e inicie um novo processo.
- Arraste uma atividade Java Scope para o Designer de fluxo de trabalho. Como nenhum caminho está especificado na propriedade Java Library Path , o padrão do Scope é usar a variável de ambiente PATH para inicializar a biblioteca Java.
- Arraste uma atividade Load Jar para o painel Designer .
- Atribua o caminho ao arquivo
Objects.jar
no campo de propriedade JarPath . - Arraste uma atividade Invoke Java Method abaixo de Load Jar.
-
Insira o nome do método na propriedade MethodName e preencha o campo TargetType com o nome do pacote Java e a classe que deseja usar.
Observação: a propriedade TargetType deve ser especificada no formatopackage.name.ClassName
. Por exemplo, se tivermos um pacote chamadocom.package.example
que contém a classeUser.Profile
e quisermos usá-lo, a propriedade TargetType deve se parecer comcom.package.example.User.Profile
. - Crie uma variável
JavaObject
, chamadaJavaObjectResultStaticMethod
, para armazenar os valores retornados pela atividade Invoke Java Method e coloque-a no campo de propriedade Result . - Adicione uma variável Converter objeto Java ao fluxo de trabalho e coloque a variável
JavaObjectResultStaticMethod
no campo de propriedade JavaObject . - No campo de propriedade TypeArgument , selecione o tipo de variável
System.Int32[]
. - Crie uma nova variável
Int32[]
, chamadaResultStaticMethod
e adicione-a ao campo de propriedade Result . - Em seguida, arraste uma atividade For Each para o painel Designer .
- Defina a propriedade TypeArgument como
Int32
e atribua a variávelResultStaticMethod
ao campo de propriedade Values . Isso permite que você percorra cada número inteiro de sua matriz. - Arraste uma atividade Write Line para o corpo da atividade For Each e atribua
value.ToString
à sua propriedade Text . Isso ajuda você a gravar todos os valores na variávelResultStaticMethod
no painel Output , em tempo de execução.
Seu fluxo de trabalho deve ficar assim:
- Adicione uma atividade Create Java Object ao fluxo de trabalho, sob a atividade Java Scope usada no exemplo anterior.
- Use o nome do pacote Java e a classe
Coordinate
para preencher a propriedade TargetType -uipath.java.test.Coordinate
. - Crie uma variável no campo de propriedade Result usando a tecla de atalho Ctrl + K e nomeie-a
JavaObject
. - Arraste uma atividade Invoke Java Method para o painel Designer .
- Para obter a soma dos dados retornados pela classe
Coordinate
, grave o métodogetCoordinateSum
na propriedade MethodName . - Crie uma variável no campo de propriedade Result usando a tecla de atalho Ctrl + K e nomeie-a
JavaObjectResultObjectMethod
. - Adicione a variável
JavaObject
no campo TargetObject . - Adicione uma atividade Converter Objeto Java ao fluxo de trabalho.
- Adicione a variável
JavaObjectResultObjectMethod
no campo JavaObject . - Na lista suspensa de propriedades TypeArgument , selecione o tipo de dados
System.Double
. - Crie uma nova variável
Double
, chamadaObjectMethodResultValue
e adicione-a ao campo de propriedade Result . - Arraste uma Caixa de mensagem para o painel Designer .
- Atribua
ObjectMethodResultValue.ToString
à propriedade Text para exibir os valores dentro da variávelDouble
. Em tempo de execução, oJavaObject
é criado, contendo a classeCoordinate
, então o métodogetCoordinateSum
é executado e seus resultados são retornados em outroJavaObject
. Os resultados são então convertidos em uma variável .NETDouble
que é então exibida em uma MessageBox.
O fluxo de trabalho final deve ficar assim: