O mapeamento do diretório virtual WebLogic permite que um aplicativo entregue arquivos como
imagens ou arquivos estático que estão localizados fora da raiz do documento do aplicativo.
É possível usar os recursos de entrega de arquivos do WebSphere para entregar estes arquivos.
Esta regra detecta a presença do elemento <virtual-directory-mapping>
no arquivo weblogic.xml. Há uma correção rápida disponível no scanner de origem. A correção rápida o ajuda a criar
elementos <fileServingAttributes> correspondentes no arquivo de extensão da web
do WebSphere tradicional ou do Liberty.
Por exemplo, o arquivo weblogic.xml pode conter os mapeamentos a seguir:
<virtual-directory-mapping> <local-path>c:/usr/files</local-path> <url-pattern>/images/*</url-pattern> <url-pattern>*.jpg</url-pattern> </virtual-directory-mapping> |
É possível definir as mesmas informações nas extensões da web do WebSphere Application Server, conforme mostrados no exemplo a seguir:
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="c:/usr/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/* *.jpg"/> |
O atributo de entrega de arquivos extendedDocumentRoot é uma sequência delimitada por vírgulas para mais de uma raiz que existe fora do módulo da web do aplicativo.
O atributo de entrega de arquivos file.serving.patterns.allow é uma sequência delimitada
por espaços para mais de um padrão.
Você pode experimentar problemas ao entregar conteúdo dos aplicativos com conteúdo estático em
diversos locais.
No WebLogic, qualquer virtual-directory-mapping definido está disponível de
ambos a raiz de contexto e o local do diretório.
No WebSphere Application Server, a propriedade file.serving.patterns.allow
limita o acesso a conteúdos estáticos que correspondem a padrões específicos dentro da
raiz do documento estendido ou da raiz de contexto.
Dependendo de como os arquivos são organizados, você pode precisar modificar o valor da propriedade file.serving.patterns.allow. Por exemplo,
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="/common/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/*"/> |
Se você tiver um diretório
images no /common/files e um /common/files/images
na raiz de contexto, inclua um /common/files/images no valor da propriedade file.serving.patterns.allow.
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="/common/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/* /common/files/images/*"/> |
É possível permitir acesso mais amplo a arquivos usando a configuração no exemplo a seguir, mas o uso desta configuração pode permitir que mais conteúdo esteja disponível para o aplicativo do que você pretendia.
<fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="*"/> |
Para obter informações adicionais e exemplos, veja os recursos a seguir: