Criei uma página publica no FLUIG que mostra os feriados cadastrados em uma grid. Esses feriados vem do Data source globalCalendar. Porém ao tentar buscar o DataSource ele nega o acesso pois o usuário não está logado.
DatasetFactory.getDataset("globalCalendar", null, null, null);
wcm_global_en_US.js?v=f1.6.0-EP3:3 POST FLUIG/api/public/ecm/dataset/datasets/ 401 (Unauthorized)
Como eu faço para habilitar o acesso aos DataSets em páginas públicas?
@Guilherme, boa tarde!!
Para acessar qualquer dataset do fluig é necessário estar logado!! Para utilização em páginas públicas é recomendado realizar autenticação via OAuth para o recurso desejado!
Infelizmente não tenho nenhum exemplo, mas pode começar verificando a documentação do fluig, lá é detalhado qual protocolo do OAuth é utilizado, como criar um OAuth Provider, OAuth App e usuário aplicativo, que será necessário para utilização do protocolo.
http://tdn.totvs.com/display/public/fluig/Fluig+API
Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.
Eu tenho um exemplo, me mande um email, igor.rodrigues@totvs.com.br
tentei seguir os passos do link mas não está muito claro, teria outro material para me auxiliar?
@Guilherme, adicionei um exemplo simples de uma widget consumindo um dataset com OAuth no anexo da minha resposta anterior!
Cara só não entendi como funciona o Oauth App, da onde vem os campos Consumer Key e Consumer Secret? Posso colocar qualquer coisa nesses campos?
É aberto os campos, você que gera, já os tokens o fluig que gera! Eu normalmente crio uns hash e coloco nesses campos!
sobre o exemplo que você mandou, eu tive esse erro Uncaught ReferenceError: CryptoJS is not defined, ele está importando primeiro o enc-base64-min e depois o hmac-sha1, como mudo a ordem de importação?
Eu deixei na ordem já no application.info, nao tive esse problema aqui! Qualquer coisa, coloca o js da widget por ultimo no application!
Deu certo nas páginas logadas, nas publicas continua dando error, porém agora é erro no servidor, ele não fala o que está errado.
Descobri o que era, coloquei o mesmo valor para o customer e para o tokem, troquei os valores e funcionou, vlw 
Mais uma coisa, como eu faço constraints nos DataSets dessa maneira?
Adiciona o atributo, filterFields, no atributo data do objeto request_data. Sempre adicionando desta forma: filterFields: “campo1,valor1,campo2,valor2”. Se habilitar a busca no datatable, o mesmo ja fará a busca sozinho acrescentando um atributo na query, searchValue, que foi configurado nos settings do datatable.
Olá Guilherme, estive com o mesmo problema de acessar qualquer dataset em página pública. Você pode fazer o que o Rodolfo comentou, de usar o OAuth, criar o OAuth, etc. Portanto, seguem alguns passos para que isso seja possível:
- Se baseie neste repositório FLUIG: https://git.fluig.com/projects/SAMPLES/repos/rest-oauth-sample/browse/src/main/java/com/fluig/oauth/ConnectRest.java
- Uma vez logado pelo OAuth, faça uma requisição POST nesta URL "/api/public/ecm/dataset/datasets" do FLUIG passando como parâmetro um JSON;
- JSON que vai passar por parâmetro é este abaixo:
{
//name do dataset
"name" : "colleague",
//campos de retorno
"fields" : ["login"],
//contraints...
"constraints" : [
{
//campo para fazer filtro
"_field" : "login",
//valor inicial
"_initialValue": "Bruno",
//valor final
"_finalValue" : "Bruno",
//tipo de pesquisa (1- MUST, 2 - SHOULD, 3 - MUST_NOT )
"_type": 1,
//search tipo LIKE
"_likeSearch": false
}
],
//ordenar por campos...
"order":["login"]
}
Espero que consiga, qualquer coisa manda uma mensagem aí.
Abraços.
eu apenas queria esse arquivo (dataset_public.zip) mas esta corrompido 