Histórico da Página
Informações | ||
---|---|---|
| ||
Esta página foi revisada para considerar as novas configurações de server do TOTVS Fluig Plataforma para a atualização 1.6. Caso possua uma atualização anterior do Fluig Plataforma acesse: WCM 015 - Como integrar um widget com serviços REST?. |
Índice
Índice | ||||||||
---|---|---|---|---|---|---|---|---|
|
Objetivo
O objetivo desse guia é apresentar a integração de widgets com serviços REST.
Integração de widget com serviços REST
Para obter dados de uma fonte externa à plataforma, a forma mais aconselhável é por chamada REST. Vamos criar um REST dentro do próprio widget, para isso devemos seguir alguns passos.
...
Em seguida, temos que alterar os arquivos jboss-web.xml
Nota | ||
---|---|---|
| ||
A propriedade context-root precisa ser idêntica ao application.code fornecido para a sua widget no arquivo application.info, precedida por uma "/". Exemplo: se sua widget possui o código news, o context-root precisa ser /news. |
Bloco de código | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <jboss-web> <context-root>/news</context-root> <disable-cross-context>false</disable-cross-context> <security-domain>TOTVSTech</security-domain> <security-role> <role-name>user</role-name> <principal-name>totvstech</principal-name> </security-role> <security-role> <role-name>totvstech</role-name> <principal-name>totvstech</principal-name> </security-role> <security-role> <role-name>sysadmin</role-name> <principal-name>wcmadmin</principal-name> </security-role> <security-role> <role-name>admin</role-name> <principal-name>wcmadmin</principal-name> </security-role> <valve> <class-name>com.totvs.technology.auth.saml.TOTVSAuthenticatorValve</class-name> </valve> </jboss-web> |
Também temos que alterar o arquivo web.xml para que possamos acessar esse REST.
Bloco de código | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <session-config> <session-timeout> 30 </session-timeout> </session-config> <!-- REST --> <security-constraint> <display-name>REST</display-name> <web-resource-collection> <web-resource-name>REST</web-resource-name> <description>REST</description> <url-pattern>/api/rest/*</url-pattern> </web-resource-collection> <auth-constraint> <description>REST</description> <role-name>user</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>FORM<method>FLUIGAUTH,FORM</auth-method> <realm-name>TOTVSTech</realm-name> <form-login-config> <form-login-page>/login.jsp</form-login-page> <form-error-page>/loginfail.jsp</form-error-page> </form-login-config> </login-config> <security-role> <role-name>totvstech</role-name> </security-role> <security-role> <role-name>user</role-name> </security-role> <security-role> <role-name>sysadmin</role-name> </security-role> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> |
...
- '/news': é o código do widget;
- '/api/rest': é o @Path da classe ApplicationConfig.java;
- '/news': é o @Path da classe NewsRest.java;
- '/feed': é o @Path do método da classe NewsRest.java que desejamos chamar.
Pom.xml
Por fim, temos de declarar a dependência ao módulo foundation-security-authentication-saml no pom.xml do widget.
...
language | xml |
---|
...
- .
...
...