Fiz isso de uma forma diferente, usei o método getDocumentContent do webservice ECMDocumentService.
O fluig retorna o documento no formato byte.
Dessa forma você pode salvar como arquivo (em VB.net):
Public Shared Sub WriteAllBytes (
path As String,
bytes As Byte()
)
Ou como no meu caso, enviar como um anexo no email (em VB.net).
Dim message As New MailMessage(de, para, strAssunto, strCorpo)
message.Attachments.Add(New Attachment(New System.IO.MemoryStream(anexoFluig), nomeArquivoFluig))
E ainda salvar no banco de dados:
Public Function updateOrdensEnviadas(id As Integer, destinatarios As String, assunto As String, binario As Byte(), binarioFluig As Byte(), logTentativas As String, enviado As String)
Dim con As New SqlConnection
Dim tabela As New DataTable
Dim cmdConsulta As New SqlCommand
Dim log As New Log
Dim resultado As Boolean
con.ConnectionString = connectionString
cmdConsulta.Connection = con
cmdConsulta.Parameters.Add("@BINARIO", SqlDbType.VarBinary)
cmdConsulta.Parameters.Add("@DESTINATARIOS", SqlDbType.VarChar)
cmdConsulta.Parameters.Add("@ASSUNTO", SqlDbType.VarChar)
cmdConsulta.Parameters.Add("@BINARIOFLUIG", SqlDbType.VarBinary)
cmdConsulta.Parameters.Add("@ID", SqlDbType.Int)
cmdConsulta.Parameters.Add("@LOGTENTATIVAS", SqlDbType.VarChar)
cmdConsulta.Parameters.Add("@ENVIADO", SqlDbType.VarChar)
cmdConsulta.Parameters("@BINARIO").Value = binario
cmdConsulta.Parameters("@DESTINATARIOS").Value = destinatarios
cmdConsulta.Parameters("@ASSUNTO").Value = assunto
cmdConsulta.Parameters("@BINARIOFLUIG").Value = binarioFluig
cmdConsulta.Parameters("@ID").Value = id
cmdConsulta.Parameters("@LOGTENTATIVAS").Value = logTentativas
cmdConsulta.Parameters("@ENVIADO").Value = enviado
cmdConsulta.CommandText = My.Resources.UpdateOrdens
Try
con.Open()
cmdConsulta.ExecuteNonQuery()
log.registraLog(Now.ToString & "==>Log de registro no sql de ordens de compra para o destinatário:" & destinatarios.ToString)
resultado = True
Catch ex As Exception
log.registraLog(Now.ToString & "==>Erro na Conexão com o Banco de Dados no Registro do Log de envio de email" & ex.ToString)
resultado = False
Finally
con.Close()
End Try
Return resultado
Boa tarde Claudio, tentou com
— Diogo Boegershausen 30 de Jul de 2018java.util.Base64.getEncoder().encode(new java.lang.String('minha string').getBytes());
oujava.util.Base64.getDecoder().decode(encodedBytes);
?Diogo, eu tentei, mas para ser sincero, não sei tentei da forma correta. Vc já fez isso antes, sabe se dizer como ficaria? Pq apenas dar um decode no retorno do método não resolve.
— Claudio Neto 30 de Jul de 2018Existe também o método encodeToString no encoder:
— Diogo Boegershausen 31 de Jul de 2018java.util.Base64.getEncoder().encodeToString(retorno);
, que vai te retornar uma String no lugar do byte[]Mano, muito obrigado!!! Eu estava nesse instante iniciando um projeto no Visual Studio para criar um webservice intermediário!!! Caraca, Deus te abençoe! Valeuzão!!!
— Claudio Neto 02 de Aug de 2018