Versão 4.0.7
Novidades
- Portlets JSR-168 , Reindexação de Conteúdos, Pastas Públicas e Funcionalidades em Export/Import.
Alterações/melhorias que afetam a compatibilidade
- Alterações no douidefinition:
- Alterado elemento
className
para elementodataProviderClassName
. Este elemento permite definir o nome da classe que implementaIDataProvider
; - Alterado elemento
sourceClassName
para atributoclassName
. Este elemento permite definir o nome da classe que estendeSource
. No padrão usado pelo produto, isto deve ser feito por um atributoclassName
;
- Alterado elemento
- As alterações realizadas, para esta versão, nas funcionalidades Exportação e Importação de canais, não permitem importação de arquivos XML de estruturas geradas em versões anteriores;
- Tipo de retorno do método
IServiceInstanceManager.getCustomProperties(SessionConfig, String, ITransaction)
foi alterado deHashMap
paraMap
; - Todos atributos e conteúdos de elementos no douidefinition.xml podem possuir EL (Expression Language), e são processados durante uma requisição, exceto se o elemento douiDefinition possuir o atributo
isElIgnored="true”;
Há novos objetos implícitos disponíveis em expressões EL de controles que podem comprometer a compatibilidade com as versões anteriores do produto. Portanto, caso algum field com o identificador igual a um desses objetos seja referenciado diretamente em um EL, o objeto implícito será referenciado em seu lugar. Nesse caso a expressão precisa ser ajustada para
source.data
.Como o default é processar o EL, caso exista algum conteúdo no douidefinition.xml com a sintaxe de EL, ele será processado. Para evitar isso, pode-se especificar
isElIgnored="true"
no elemento<douiDefinition/>
; - Acréscimo das novas permissões no serviço E-Mail Marketing: Administrar e Assinar. No momento do upgrade, as permissões correntes serão atualizadas e os usuários que possuírem a permissão de "Gerenciar instância de serviço" receberão automaticamente aquelas permissões. Entretanto, a permissão "Assinar" não será concedida automatica e diretamente a nenhum usuário. A atribuição dessa permissão deverá ser feita manualmente;
- Portlets:
- Para funcionamento de portlets deve-se utilizar no mínimo a versão 5.5.20 do Tomcat;
- Deletar o arquivo: www/WEB-INF/lib/xercesImpl.jar;
- O contexto do portal precisa ter acesso aos contextos onde são realizados os deployments dos portlets no servidor de aplicação. Para isso, nos arquivos portal.xml e server.xml do diretório do tomcatdeve ser acrescentado
crossContext="true"
na tag<context path/>
; - Também no arquivo server.xml, na tag
<conector/>
, especificaremptySessionPath="true"
; - O arquivo www/WEB-INF/web.xml foi alterado para suportar portlets. Portanto, deve-se comparar o arquivo com o novo e acrescentar os novos itens;
- As seguintes interfaces e suas implementações foram ajustadas para terem um comportamento de acordo com a especificação JSR-168:
IServiceInterfaceRequest
IServiceInterfaceRenderRequest
IServiceInterfaceActionRequest
IServiceInterfaceResponse
IServiceInterfaceRenderResponse
IServiceInterfaceActionResponse
IServiceInterfaceUrl
Com esses ajuste, alguns métodos dessas interfaces tiveram suas assinaturas alteradas.
IServiceInterfaceUrl
agora não permite colocar parâmetro com valornull
. Esta alteração é devido a compatibilidade com a especificação JSR-168;- Cada servidor de aplicação agora pode ter somente uma instalação do Lumis Portal;
- A partir dessa versão, em ambientes em cluster, o servidor de aplicação deve ser configurado de forma que a sessão seja replicada entre os nós do cluster;
- Reestruturação de bibliotecas (*.jar) utilizadas pelo portal estão separadas em três categorias:
- shared: as bibliotecas devem ser instaladas em um classloader shared do servidor de aplicação. Elas estão em "lib/shared";
- portal war: localizam-se em "/www/WEB-INF/lib".
- standalone: necessárias para execução do portal fora do servidor de aplicação, mas que não devem ser instaladas no servidor de aplicação. Estão localizadas em "/lib";
- Tag
href
,em arquivos XSL, que representa link para download de arquivo, foi alterada paradownloadHref
.Ex:
<a href="{file/@href}" ...
foi alterado para:
<a href="{file/downloadHref}" ..
- Devido a estruturação da lógica utilizada pra criação de sessão de usuários, os seguintes métodos foram deprecated:
ControllerHtml
:getCookie(String)
setCookie(String, String)
deleteCookie(String)
PortalUtil
:getCookie(String, HttpServletRequest)
- Mudou a forma de definir a implementação de
ISourceSearchContentFiller
a ser utilizado na indexação de conteúdos. Antes:- A classe
ProcessActionHandler
(ou derivada), através do métodogetDefaultSourceSearchContentFillerClassName
, definia qual o nome da classe default, que implementaISourceSearchContentFiller
, a ser utilizada. - Podia-se redefinir o nome da classe no douidefinition.xml através do atributo
//processAction/search/@sourceSearchContentFillerClassName
- A classe
TabularSource
determina o nome da classe através do novo métodogetDefaultSourceSearchContentFillerClassName
. Este método é protected, logo pode ser sobrescrito pelas classes derivadas deTabularSource
, para redefinir o nome default da classe que implementaISourceSearchContentFiller
. - Pode-se redefinir o nome da classe no douidefinition.xml através do atributo
//source/search/indexer/@sourceSearchContentFillerClassName
- Excluído método
getDefaultSourceSearchContentFillerClassName
das classes:ContentTableAddDataProcessActionHandler
ContentTableUpdateDataProcessActionHandler
ContentTableDeleteDataProcessActionHandler
BaseTableDataProcessActionHandler
- A classe
- Controle de input com id="action" dá erro de javascript. No Internet Explorer, o form.action deveria retornar o action do form quando há um input com id="action", pois neste caso está retornando o objeto do input. Para contornar este problema, a princípio sem solução, deve-se usar outro id para o controle ou input.