Versão 4.0.10
Novidades
- Serviços: Comentários, Agenda de Sala de Reunião e Selecionador de Localização ;
- Melhorias nos serviços Enquete, E-MailMarketing e Newsletter;
- Samples com demonstrações de aplicações da API do Lumis, distribuído juntamente com a instalação do produto.
Alterações/Melhorias
- A partir da versão 4.0.10, para efetuar o upgrade será necessário que esteja instalada a versão 4.0.7 ou superior. Caso contrário, será necessário primeiro atualizar para versão 4.0.7 ou superior e depois atualizar para a versão atual;
- Foi acrescentado no arquivo lumishibernate.cfg.xml a propriedade:
<property name="connection.provider_class">org.hibernate.connection.DBCPConnectionProvider</property>
Esta propriedade é configurada quando deseja-se utilizar o pool de conexões do DBCP pelo hibernate. Deve estar configurada também, nas conexões customizadas localizadas em config/connection/*.xml.
A configuração acima é recomendada quando não estiver utilizando o pool de conexões configurado no application server.
- Retirados da classe
SearchContent
os métodoshasSnippetField
,getSnippetFieldValue
esetBoost
; - Retirados da classe
SearchContentField
os métodosgetBoost
esetBoost
; - XSL da interface
AverageGrade
(Média das Notas), do serviço Comentários, foi alterado; - Classe
BannerCategoryCofig
alterada paraBannerCategoryConfig
; - Arquivo searchconfig.xml foi modificado, e deve ser substituído pelo arquivo da nova versão. Os delimitadores de configuração de busca "[lumis:attribute]" e "[/lumis:attribute]" foram substituídos por "${" e "}";
- A nomenclatura dos jars do produto foram alterados e devem ser substituídos. Ocorrerão erros se for mantido mais de um do mesmo tipo. Portando, substituir:
- \lib\shared\LP4.0_shared.jar por \lib\shared\lumisportal_4.0.10.070416_shared.jar
- www\WEB-INF\lib\LP4.0.jar por www\WEB-INF\lib\lumisportal_4.0.10.070416.jar;
- Valor de retorno de
IHyperLinkManager.getUrl
alterado paraIServiceInterfaceUrl
. - Valor de retorno de
DouiHyperlink.getUrl
alterado paraIServiceInterfaceUrl
. - Método
IHyperlinkManager.getXmlString
deprecated; - A interface
publicUserSubscription
do serviço E-Mailmarketing foi alterada. Portanto customização de XSL para esta interface deve ser revista; - O controle
lum_fileUpload
agora recebe o parâmetro{@id}_replaceFile
para indicar se o upload deve substituir o arquivo atual. Customizações do XSL deste controle precisam ser revistas. Maiores detalhes vide o javadoc; - Render parameters não devem ser utilizados como forma de repassar parâmetros entre process action handlers.
São apenas parâmetros para serem enviados na renderização da interface e devem ser adicionados apenas quando a interface a ser renderizada é conhecida,
após a execução do process action (não haverá redirect).
Para repassar parâmetros entre process action handlers, utilize outras formas, tais como atributos no request.
Exemplos de equivalências (onde a diferença é, se o valor é armazenado como render parameter ou como request attribute):
type= "doui_setResponseParameters"
(armazena no render parameter) equivalente atype="doui_setRequestAttributes"
(armazena no request attribute );type="responseRenderParameter"
(está deprecated - lê o valor do render parameter) equivalente atype= "attributeValue"
(lê o valor do request attribute);fieldValue type="responseRenderParameter"
(está deprecated - lê o valor do render parameter) equivalente afieldValuetype= "attribute"
(lê o valor do request attribute);
-
IServiceInterfaceActionResponse.getRenderParameter
eIServiceInterfaceActionResponse.getRenderParameters
estão deprecated. -
Alterado nos process action handlers padrões para ao invés de adicionar o
itemId
elumMetaDataId
como render parameter, adicioná-los como atributos no request. Para melhor compatibilidade anterior no doui, os métodosIServiceInterfaceActionResponse.getRenderParameter
eIServiceInterfaceActionResponse.getRenderParameters
procuram nos atributos do request o valor de itemId, caso não exista como render parameter. - Alteração de como valores devem ser especificados no douidefinition.xml. A forma é definida pela implementação do data type correspondente. Os tipos padrão do portal foram alterados conforme a seguinte lista:
- Números inteiros não devem possuir separador de milhar;
- Tipo
double
deve utilizar '.' como separador decimal (se houver parte fracionária); Date
etime
devem ser especificados de acordo com o respectivo tipo definido em XML Schema 1.1. Exemplos: "2000-01-05T13:05:32", "2000-01-05", "13:05:32".
Maiores detalhes em:
http://www.w3.org/TR/xmlschema11-2/datatypes.html#dateTime
http://www.w3.org/TR/xmlschema11-2/datatypes.html#time
http://www.w3.org/TR/xmlschema11-2/datatypes.html#date
-
InterfaceInstanceCustomPropertiesDataProvider
,InterfaceInstanceCustomPropertiesProcessActionHandler
,ServiceInstanceCustomPropertiesDataProvider
eServiceInstanceCustomPropertiesDataProvider
passam a utilizar a mesma metodologia para conversão dos valores. Serviços que utilizam essas classes com algum tipo de dado, e que teve a sua forma de definir o valor alterada no douidefinition, podem precisar que valores de propriedades armazenadas sejam ajustados; - Assinatura do método
TableSourceFilter.getQueryFilter(QueryField, IQueryValue)
alterado paraTableSourceFilter.getQueryFilter(QueryField, IQueryValue) throws PortalException
; - O arquivo lumisdata/config/lumisportalconfig.xml foi alterado para definir o Http Authenticator que efetua o autocadastro, definido no pacote
lumis.portal.authentication.http
. Permite customizar a autenticação baseada noHttpServletRequest
; - No arquivo www/WEB-INF/web.xml, foi removido do
AuthenticationFilter
, a funcionalidade de autenticação NTLM. Este foi movido paraNTLMFilter
; - Campos que estejam definidos com
readOnly="true"
não são persistidos (inseridos ou atualizados) por padrão; - O objeto
ServiceContainerUrl
está deprecate e não dever ser utizado diretamente. Deve ser utilizado em seu lugar, oIServiceInterfaceUrl
; - Controle default para
dataType="double"
alterado de "lum_inputText
" para "lum_inputNumber
"; - renderAction com id especificado efetua validação mesmo se não existir nó de definição para esse renderAction;
BaseSourceField.convertToFieldValueClass(Object value) throws PortalException
alterado paraBaseSourceField.convertToFieldValueClass(Object value, Locale locale, String pattern) throws PortalException
;DataBoundControl.getUnboundedConverter()
está deprecated;- Quando
IChannelManager.get(SessionConfig, String, ITransaction)
é chamado passando um channelId que não existe, é retornadoPortalObjectNotFoundException,
ao invés de retornarnull
.