Esta dll é exposta como um webservice, certo?
Veja se isto ajuda
http://mrhaki.blogspot.com.br/2010/11/groovy-goodness-use-groovyws-to-access.html
se seu problema for executar o código da DLL e esta não for exposta como um WebService ou uma interface REST, de uma olhada em uma tecnologia Java chamada JNI.
Obrigado Henrique!
Estou tentando de outra forma, vou chamar uma função que retorna um CLOB do banco com o XML.
Fiz alguns testes com o CFX e não gerou erro só que também não consigo ver o xml na tela
import java.sql.Clob
import javax.jws.*
@WebService(serviceName="GetContadorService", name="GetContador")
class GetContadorController {
def getContadorService
static expose = [ 'cxfjax' ]
@WebResult(name = 'index')
@WebMethod(operationName = 'index')
def index() {
Clob clobValue
def resultado = getContadorService.buscarContador()
for (Clob clob : resultado){
clobValue = clob
}
BufferedReader reader = new BufferedReader(new
InputStreamReader(clobValue.getAsciiStream()));
String read = null;
StringBuffer buffer = new StringBuffer();
while((read = reader.readLine()) != null )
{
buffer.append(read);
}
buffer.each { row ->
println row
}
return buffer
}
}
Quando dou um print no buffer, vejo no console o xml o valor que vem do CLOB, mas não vejo o retorno no browser http://localhost:8080/webServico/getContador/index?wsdl
o que falta para meu wsdl funcionar? A pagina index.gsp está vazia, preciso incluir alguma variável?
index.gsp
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Rafael,
O resultado deve ser "montado" no GSP. Você já deu uma olhada na documentação do Grails?
https://grails.org/single-page-documentation.html
Vlw Evaldo / Henrique
Eu tinha montado uma GSP vazia e respondia para ela! Vou alterar para a forma que você mostrou, usando a renderização!!!
Perfeito o que o Kiko disse, seu resultado foge do fluxo "padrão" do Grails, ou seja, você tem que informar o tipo de saída.
Mas vale a pena estudar o uso do GSP para que você saiba exatamente onde e como usá-lo.
Segue um exemplo que retorna JSON:
render(contentType: "application/json") {
registros = array {
registros id: 0
registros mensagem: "MENSAGEM RETORNO"
}
return
}
Vale a pena dar uma olhada no tópico "9.1.6 Customizing Response Rendering" do link https://grails.org/single-page-documentation.html