Juliano's profileJuliano Nunes | Buscando...PhotosBlogListsMore ![]() | Help |
|
7/26/2008 SharePoint – STSADM causando o erro "Failed to compare two elements in the array"Esta semana eu tive um problema durante a migração de servidores SharePoint em que estou trabalhando. Primeiro eu fiz o backup do banco de dados e restaurei no servidor de destino, mas não funcionou bem. A coleção de sites principal não funcionava, gerando sempre o erro "404 Page not found". Então eu escolhi a opção de usar o import/export em cada coleção de site da aplicação web, e surpresa....outro erro. Mas desta vez eu recebi a mensagem "Failed to compare two elements in the array" durante a exportação da coleção de sites principal. Esta é uma das estranhas mensagens de erro do SharePoint, mas depois de uma visita ao Live Search e chega a resposta! Steven Van De Craen um MVP SharePoint sugere que o problema é causado devido ao registro inválido de Features, e então ele disponibilizou uma ferramenta para enumerar todas Features do site e exibir quais são inválidas, permitindo a remoção delas da aplicação.
Detalhes: http://www.moss2007.be/blogs/vandest/archive/2008/04/28/stsadm-o-export-fatalerror-failed-to-compare-two-elements-in-the-array.aspx 7/15/2008 C# - A palavra-chave yieldEste é um recurso bastante interessante que vi em um dos feeds que assino, segue o texto e a referência:
The yield keyword in C# is pretty powerful and expressive, but it doesn’t seem to be very widely known about. In this post we’ll take a quick look at what yield does and then I’ll post a follow-up that looks at what the compiler generates for you. Let’s start by looking at a simple (and contrived) example:
private static readonly string[] StringValues = new string[] { "The", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "dog" }; static IEnumerable<string> TestIterator() { foreach(string value in StringValues) { yield return value; } } The return type for the TestIterator method is IEnumerable<string>, but you can see that we don’t have a return statement in the implementation. Instead, we’re using the yield return statement to return each item that we want the caller to operate on. The compiler automatically generates a class that implements IEnumerable<string> for us. We can call this function using the following code: foreach(string value in TestIterator()) { Console.WriteLine("In foreach:{0}", value); } This code will iterate over the IEnumerable<string> instance that is returned from the TestIterator method. In this example we’ve simply iterated over an existing collection, so we’re not providing much functionality! A more interesting example would be for a binary tree such as: class BinaryTree<T> { public T Item { get; set; } public BinaryTree<T> Left { get; set; } public BinaryTree<T> Right { get; set; } } In this case, the yield keyword makes it a breeze to add IEnumerable support. First, we add IEnumerable<T> to the implemented interfaces and then we just need the code below to provide the implementation: public IEnumerator<T> GetEnumerator() { yield return Item; if (Left != null) { foreach (T t in Left) { yield return t; } } if (Right != null) { foreach (T t in Right) { yield return t; } } } This code returns the item for the current node and then recurses into the items from the left and right hand of the tree – how easy is that? This is one of the big advantages of the yield keyword: it allows you to write readable and concise code to produce an iterator. Stay tuned for part 2, when we’ll take a look at the code that the compiler generates for us... Referência: http://blogs.msdn.com/stuartleeks/archive/2008/07/14/a-closer-look-at-yield.aspx 7/14/2008 PenDrives Sandisk com tecnologia U3 agora suportam Windows VistaEssa é uma ótima notícia para as pessoas que possuem um PenDrive da Sandisk que utiliza a tecnologia U3. Em sua última atualização, o sistema U3 passa a suportar o Windows Vista. Antes do Windows Vista SP1 a unidade de CD que o U3 carrega nem era detectada corretamente. Após o SP1, esta unidade passou a ser detectada como um disco de áudio e ainda não carregava o menu U3, o que não adiantava nem um pouco. Mas agora, na atualização do driver do sistema U3, o mesmo passou a funcionar perfeitamente no Windows Vista.
Para quem não conhece o sistema U3, trata-se de uma tecnologia desenvolvida pela Sandisk que permite a instalação de softwares diretamente no PenDrive (anti-vírus, compactadores, entre muitos outros) e ainda permite a proteção do PenDrive por senha. Há um bom tempo atrás postei sobre a parceria Microsoft – Sandisk, não sei se esta atualização já é fruto da parceria, mas acho que vem coisa boa por aí.
Um abraço e tenham uma ótima semana. 7/10/2008 SharePoint: Dados sobre browsers suportados e possíveis "workarounds"Este é um whitepaper que indica quais funcionalidades podem sofrer problemas com alguns browsers e até algumas formas de contornar estes problemas. O documento cobre Internet Explorer, Firefox, Netscape e Safari. Segue o link: http://technet.microsoft.com/en-us/library/cc706882(TechNet.10).aspx Documento de grande utilidade. 7/8/2008 Brasil é campeão na categoria Games da Imagine Cup 2008!!Acaba de sair os resultados no blog oficial da Imagine Cup 2008. O Brasil ficou em primeiríssimo lugar na categoria Games com a equipe Mother Gaia Aqui vai a lista completa: Software Design Game Development “Project Hoshimi” (Programming Battle) IT Challenge Algorithm Photography Short Film Interface Design http://imaginecupfinalsinparis.spaces.live.com/blog/cns!3881675633140DB4!604.entry Agora é oficial, novo site da ImagineCup 2009 no arHoje é a grande final da ImagineCup, todos nós torcendo pelas equipes brasileiras e nos mantendo antenados através de nosso blogger official, o MSP Glebe Jr. E como era de se esperar, agora mais do que nunca é oficial. A ImagineCup 2009 terá suas finais no Egito e o tema será sim as 8 metas do milênio sugeridas pelas Nações Unidas. Agora, vocês lembram do post em que eu indiquei o site para votar nos designs para a competição? Eles foram todos utilizados. Cada acesso ao site é carregado um novo visual. :D
O novo site da Imagine Cup 2009 pode ser acessado no mesmo endereço http://www.imaginecup.com. Mais informações sobre as 8 metas do milênio em http://www.un.org/millenniumgoals/ Get ready! And step up to the challenge!!!! 7/7/2008 Projetos OpenSource Microsoft Lendo as notícias hoje de manha, vi uma matéria entitulada "Veja 10 mudanças que Ballmer deveria fazer" (adivinhem o site?!). Até aí tudo bem, mas quando comecei a ler a notícia me deparei com o seguinte item "Criar projeto open source...". Dessa vez eu não vou nem escrever muito, só vou citar 4 itens: - Releasing the Source Code for the .NET Framework Libraries - http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx - Microsoft Research Singularity Project - http://research.microsoft.com/os/Singularity/ - Port25 (inglês) - http://port25.technet.com/ e Porta 25 (português) - http://porta25.technetbrasil.com.br/ - CodePlex - http://www.codeplex.com Acho que os autores deveriam se envergonhar de publicar matérias incompletas. Descobrindo a topologia ideal para implantação do SharePointApesar de não trabalhar com infra-estrutura, estou tendo que atuar um pouco nesta área com o SharePoint. Estes dias tive a tarefa de levantar a topologia ideal para que fosse implantada uma extranet/intranet baseada em SharePoint. Então iniciei a pesquisa sobre como calcular quanto de espaço em disco precisarei, quantos servidores, largura de banda dos links, memória, se vai precisar de load-balance, cluster, etc. Essa é uma tarefa difícil até mesmo pra quem já trabalha com infra-estrutura, afinal é uma medição para chegar no valor mais aproximado, por tanto, não é um cálculo exato. A dificuldade está mais no levantamento de informações do log do IIS (Microsoft Internet Information Services) para analisar o tráfego atual, levantar a lista de usuários por filial e qual o percentual de usuários conectados simultaneamente durante 1 hora, daí é só colocar nas fórmulas que alguns sites e blogs indicam. Então comecei a pesquisa e cheguei às seguintes informações que podem lhes auxiliar. O SQL Server e o Reporting Services são grandes aliados na análise de logs, mas não esquecendo é claro do Microsoft Log Parser. Então, o primeiro passo é baixar o pacote de relatórios para SQL Server 2005 Reporting Services e anexar (attach) o banco IISLOG que vem no Report Pack. O SQL Server 2005 Report Pack Microsoft Internet Information Services (IIS) pode ser baixado de http://www.microsoft.com/downloads/details.aspx?familyid=d81722ce-408c-4fb6-a429-2a7ecd62f674&displaylang=en. Feito isso, o próximo passo é instalar o IIS Resource Kit que já vem com o Log Parser e outras ferrramentas (você pode baixar o Log Parser separado). O IISResKit pode ser copiado de http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en (IIS 6.0). Agora você deve abrir o Log Parser e executar o seguinte comando:
Obs: se der algum erro na execução do comando desta forma, remova os espaços entre os campos da cláusula SELECT. Outra coisa, onde está "C:\IISLog\mylogfile.log" você deve alterar pelo caminho onde estão os logs do site que deseja buscar as informações. Executando este comando o Log Parser irá selecionar os dados dos arquivos de log informados e gravá-los no banco de dados que você anexou.
Agora é só usar o SQL Server 2005 Business Intelligence Development Studio (BIDS) ou acessar o gerenciador de relatórios através do http://servername/reports para fazer o upload dos relatórios. A propósito, os relatórios e o banco de dados IISLOG ficam no caminho C:\Program Files\Microsoft SQL Server Report Packs\Microsoft SQL Server Report Pack for Internet Information Services. Você terá que criar uma nova fonte de dados no Reporting Services e alterar em cada relatório para que eles apontem para esta nova fonte de dados. Neste caso é mais prático utilizar o BIDS. Feito isso, agora é só acessar os relatórios e levantar as informações importantes. Então você escolhe a fórmula que confiar mais :D. Digo isso porque existem N fórmulas publicadas na internet, mas a própria Microsoft sugere algumas. Seguem os links:
Enfim, há N alternativas, mas se você quer planejar sua topologia da melhor forma e mais organizada, você pode utilizar uma ferramenta que tem uma idéia simples, mas que é muito organizada e bem detalhista. Trata-se do Microsoft System Center Capacity Planner (http://www.microsoft.com/systemcenter/en/us/capacity-planner.aspx), uma ferramenta gratuita, expansível e que ajuda na pré e pós-implantação que ainda permite realizar simulações com as configurações realizadas. O SCCP já vem com um modelo para elaborar planos de capacidade para Exchange 2007, mas você pode baixar o modelo para Office SharePoint Server 2007 e Windows SharePoint Services 3.0 em http://technet.microsoft.com/en-us/library/bb961988(TechNet.10).aspx. Há vídeos demonstrando a utilização do Microsoft System Center Capacity Planner em http://technet.microsoft.com/en-us/sccp/bb898336.aspx.
Bom, a minha intenção é que este post seja só um aperitivo, em breve deverei postar exemplos de utilização do SCCP para planejamento de topologias SharePoint.
Um abraço. 7/2/2008 Internet Explorer 8 - Mais recursos de segurança e facilidades para administradores de redeAlém do já conhecido Phishing Filter que acompanha o IE7, a nova versão (Internet Explorer 8) a partir do beta 2 terá o XSS Filter que irá impedir que aconteçam ataques de script através de sites de terceiros (cross-site scripting).
Outra novidade quando ao XSS Filter, é um novo método do objeto window no JavaScript, o toStaticHTML. Isso irá garantir que mesmo que você receba algum script embutido no valor de um campo, ele será tratado como texto plano. document.attachEvent('onmessage',function(e) { Outra mudança foi no controle HTML de upload de arquivos (HTML File Upload Control), que para maior segurança não aceita que o caminho do arquivo seja digitado, ou seja, a textbox que exibe o caminho e nome do arquivo agora é somente leitura (read-only). E o IE8 virá com a opção para enviar o caminho completo do arquivo durante o upload desabilitada por padrão, para a zona de Internet.
Há outros recursos que já estão no IE8 deste o primeiro beta, mas alguns merecem destaque. Um deles é o destaque do domínio na barra de endereços (domain highlighting) que exibe o real domínio do site com maior destaque, para facilitar a verificação de tentativas de Phishing.
Não poderia esquecer de mencionar também o SmartScreen® Filter como destaque, que vai mais além do que analisar tentativas de Phishing. Ele é um substituto de valor para o Phishing Filter já que possui interface aprimorada, melhor performance, novas técnicas de heurística, suporte a anti-malware e suporte a políticas (group policies). E é nessa última opção que entram os administradores de rede, pois terão maior controle sobre a permissão do usuário de ignorar o aviso de site inseguro e continuar a navegação. O IE 8 será sim um lançamento de peso. Há muitos novos recursos, muito mais preocupação com dois dos principais pilares da internet (segurança, padrões da web) e acredito que poderemos contar com itens como: performance, produtividade e qualidade. Aguardemos o próximo beta. Fonte: http://blogs.msdn.com/ie/default.aspx |
|
|