Pergunta

Temos um grande número de base Java servlets / portlets que funcionam em um portal BEA que queremos converter em SharePoint 2007 webparts. Muitos dos portlets usar as preferências do usuário, mas as implementações são divididos entre as preferências que está sendo tratado pelo portlet diretamente e armazenados em um banco de dados separado do portal. Outros estão usando a API do BEA WebLogic para as preferências do usuário.

perguntas Três:

  1. Alguém já obtido um Java Servlet / JSP (compilado contra o JRE 1.4.2 e em execução no Tomcat 4.1) para executar como um Web Part SharePoint 2007?
  2. Como grande de um esforço foi em geral (como, foi medido em dias / semanas / meses)?
  3. Seria mais fácil para reescrever o portlet como webparts nativos pelo menos tão longe como as preferências do usuário estão em causa?
Foi útil?

Solução 2

Aqui está o que eu fiz para um único portlet, um painel de cotação de ações.

Temos um gadget que exibe cotações de ações. Nós temos uma conta com Tickertech para eles para nos fornecer informações cotação. Existem preferências do usuário que permitem que as pessoas para adicionar o gadget para uma página privada e, em seguida, selecionar ações de interesse para eles como indivíduos. Você também pode selecionar quais colunas exibir. Isto é realizado através de JavaScript. Os símbolos de ações selecionadas são enviadas juntamente com um símbolo que identifica o pedido como proveniente de um cliente válido.

A abordagem mais simples era usar um controle de conteúdo da web e basta colar no JavaScript. Isso funciona, mas não deixa maneira de um usuário para alterar os símbolos de ações ou outras preferências envolvendo Tickertech.

O próximo passo foi criar um Webpart personalizado. Estamos usando o WSPBuilder add-on para o Visual Studio. A empresa de consultoria que está nos ajudando com o projeto reccomended e estou muito feliz por eles fizeram, reduz o ciclo de integração a um nível tolerável.

No webpart temos uma propriedade que contém o script.

public class MarketSummaryWP : Microsoft.SharePoint.WebPartPages.WebPart
{     
    string m_scriptBlockPre = "<script language='javascript'> \n"+ // the beginning of the JavaScipt block 

Nos CreateChildControls () override, eu adicionei-lo como um literal.

this.Controls.Add(new LiteralControl(this.Script));  

Em seguida eu mudei o script para ser privado e criou uma outra propriedade para manter a lista de símbolo de ações. Aviso de fora da propriedade Script faz a concatenação dentro do getter.

    //Script Property
    [WebBrowsable(false),
    WebDisplayName("Script"),
    WebDescription("The JavaScript to insert in the page.")]
    public string Script
    {
    get { return m_scriptBlockPre + m_stockSymbolsList + m_scriptBlockPost; }
    //set { ; }
    }

    //Stock Symbol list Property
    [Personalizable(PersonalizationScope.User), WebBrowsable(true),
    WebDisplayName("Stock Symbols"),
    WebDescription("The stock symbols to retrieve quotes for, seperated by commas.")]
    public string StockSymbols
    {
        get { return m_stockSymbolsList; }
        set { m_stockSymbolsList = value; }
    }


    string m_stockSymbolsList = "GE,CAT,$DJI,AMR,JNJ,";

    string m_scriptBlockPost = " *other JavaScript code* </script> \n"+

Esta me recebe um webpart que pode ser adicionado a qualquer página, porque é na galeria Web Part. Para adicionar uma cópia do webpart construído usando a estática html webpart, você precisa para obter o bloco JavaScipt de uma instância existente provavelmente usando 'view source', navegue até a página de destino, adicione uma nova instância da estática HTML webpart, e modificá-lo para incluir o bloco JavaScipt; cada vez. Desta forma, os usuários só tem que selecioná-lo a partir de uma lista de webparts e podem ter preferências cotações de ações personalizadas.

Outras dicas

Temos um projeto ligeiramente similiar, onde estamos convertendo a partir de um portal BEA para Sharepoint.

A diferença é que não temos páginas de qualquer ou JSP servlet java como webParts / portlets, em vez todo esse código em nosso sistema é portlets .net (e agora webParts.).

do servlet Java estão em janelas pop-up, que estão ligadas a partir do SharePoint usando hiperlinks.

Então, eu não posso lhe dar uma resposta a 1. Como nós nunca fiz isso.
No entanto, para converter formar uma BEA portal portlet a um SharePoint Web Part pode ser um exercício importante, como você precisa para construí-los de uma maneira completamente diferente.

Em termos de esforços, temos migrou cerca de 100 gadgets para webparts / aplicações em 1 ano, com um desenvolvedor em tempo integral, e uma infra-estrutura SharePoint / configurer.

E para 3 ... tudo depende de como complicado o seu portlet são. Se você quiser mantê-los como portlet / webParts então é necessária uma reescrita completa a menos que você usar um hack como um webpart página espectador ... mas então você não está realmente migrando, você só encapsular o sistema existente com SharePoint no topo.

Eu diria que este é um projeto grande, que precisa de um planejamento cuidadoso para ter sucesso.
Espero que isso ajude.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top