Здесь в комментариях развернулась бурная дискуссия на тему того, на сколько сложно (и вообще реально ли) настроить внешний вид MOSS 2007 под свои нужды или под требования фирменного стиля компании. Большинство участников сходятся во мнении, что это крайне сложная задача, что лучше не заморачиваться и в качестве CMS’ки воспользоваться чем-то вроде Drupal‘а или MODx‘а. И только один грамотный товарищ из Словении доказывает, что это не так. На картинке – пример того, что его компания смогла сделать из Publishsing Layout и open source’ной темы из интернета.

Это, конечно, не знаменитые Гавайские авиалинии, но тоже очень неплохо.

Для того, чтобы SharePoint выводил вместо обобщенного сообщения об ошибке (типа Unknown Error) полноценную отладочную информацию, необходимо выполнить следующие действия:

  1. На веб-сервере, где установлен SharePoint, перейти в папку Диск:\Inetpub\wwwroot\wss\VirtualDirectories\[папка узла] (например 80).
  2. Открыть текстовым редактором (например, Notepad’ом) файл Web.config.
  3. Найти строку, содержащую слово “CallStack“. Изменить значение атрибута CallStack на “true“. Должна получиться строка следующего вида:
    <SafeMode MaxControls="200" CallStack="true"
         DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="false">
  4. Найти элемент “CustomErrors“. Установить значение атрибута mode в “off“:
    <customErrors mode="Off" />
  5. Сохранить и закрыть файл. Перезапускать IIS при этом не требуется.

Теперь в случае возникновения ошибки будет выводиться полная трасса стека с указанием метода, сгенерировавшего исключение.

А вот здесь дают хостинг на SharePoint. Правда в бесплатной версии есть ограничения на 5 пользователей и 5 мегабайт пространства, но для небольшого проекта или user-группы вполне сгодится. Особенно если документы хранить отдельно где-нибудь в SVN’е (и/или не пользоваться версионностью в библиотеках).

[по материалам JOPX‘а]

На днях Microsoft анонсировал новый продукт – Microsoft Search Server 2008 (в девичестве – S2). В настоящий момент доступна CTP-версия, релиз ожидается в марте 2008 года. Что же это за продукт?

На самом деле MSS 2008 это обновленная версия MOSS 2007 for Search под другим названием. Планируется выпуск двух вариантов поставки: бесплатная версия Express и коммерческий продукт Search Server. Продукт предлагает те же возможности, что и MOSS 2007 Standard Edition, плюс некоторые дополнительные возможности (отмечены курсивом):

  • Интерфейс центра поиска
  • Настраиваемые веб-части, связанные с поиском.
  • Поддержка Best Bets и подсветки результатов поиска.
  • Настройки процесса сбора информации (crawl’инга источников данных).
  • Тезаурус поиска (исключение нерепрезентативных слов, создание наборов синонимов).
  • Поиск в различных источниках данных: общие папки, папки Exchange’а, базы данных Lotus Notes, веб-сайты и др. Набор источников расширяется за счет установки поисковых адаптеров сторонних производителей.
  • Встроенные адаптеры позволяют обрабатывать (искать внутри) документов MS Office, веб-страниц, текстовых файлов, XML-файлов. Так же можно установить бесплатный адаптер для PDF-файлов.
  • Обобщенный поиск (Federated Search) за счет использования коннекторов стандарта OpenSearch. В поставку входят коннекторы для Documentum и FileNet
  • Веб-части для обобщенного поиска.
  • Возможна установка поверх Windows SharePoint Services (WSS) 3.0 для расширения поисковых возможностей этого продукта.
  • Упрощенный процесс установки, проверяющий и наглядно отображающий наличие требуемых компонентов в системе.

Поддерживаются два варианта установки:

  • Простая (Basic) установка – в этом варианте инсталлируется SQL Server Express (с ограничением размера базы 4ГБ). Он используется для хранения поисковой информации. Учитывая максимальный размер базы, могут быть проиндексированы порядка 400000 документов.
  • Расширенная (Advanced) установка – в этом варианте можно указать, какой SQL сервер должен быть использован для хранения поисковой информации.

По сути, при любом варианте сначала ставится WSS 3.0, а затем поверх него функциональность сервера поиска. Разница между полной и Express версиями состоит в том, что Express-версию можно установить только на один сервер, т.е. она не масштабируется.

Установка может быть выполнена поверх существующего WSS 3.0, в этом случае будет расширена поисковая функциональность. Выполнить установку поверх MOSS 2007 нельзя. В первом сервиспаке для MOSS будет добавлена функциональность обобщенного поиска.

Сводная таблица по семейству продуктов, поддерживающих поиск:

Продукт Технологии Характеристики
Microsoft Search Server 2008 Express (MSSX 2008) Windows 2003 Server

WSS 3.0

SQL Server 2005 Express or SQL Server 2005

Бесплатный

Нет ограничений на количество документов (кроме ограничений базы данных MSSQL Express 2005)

Установка только на один сервер

Обобщенный поиск (Federated search)

Microsoft Search Server 2008

(MSS 2008)

Windows 2003 Server

SQL Server 2005 (or SQL Server 2000 SP3a)

WSS 3.0

Без ограничения на количество документов

Поддержка нескольких серверов/ферм

Обобщенный поиск (Federated search)

Microsoft Office SharePoint Server 2007

(MOSS 2007)

  Поиск людей (т.е. поиск в профилях пользователей)

Поиск в Business Data Catalog (BDC)

Остался один небольшой вопрос – что же такое Обобщенный поиск? Это технология, позволяющая передавать поисковые запросы и получать их результаты между различными информационными системами (в т.ч. и веб-сайтами в Интернете). Результаты поискового запроса, полученные от внешних (по отношению к серверу поиска) систем, обычно выводятся рядом с основными результатами. Примеры коннекторов к внешним информационным системам можно посмотреть на сайте Microsoft.

Между тем, замечательная утилита SPM 2007 (скачать) продолжает обновляться (за что, безусловно, спасибо её автору, Carsten Keutmann‘у). Из видимых невооруженным глазом нововведений появился просмотр элемента в браузере прямо в окне программы, просмотр корзины, рабочих процессов и CAML-представлений.

SPM 2007 несколько раз выручал меня в работе. Например, в процессе создания узла произошел сбой. При этом узел появился в Hierarchy Manager, при обращении выдавал сообщение об ошибке и совершенно не хотел удаляться. Я запустил SPM, нашел в нем созданный узел и нажал Delete. Вуаля, узел исчез даже не пикнув.

Единственное ограничение, о котором не стоит забывать: SPM должен быть установлен на той же машине, где стоит SharePoint (т.е. на одном из WFE).

Представим ситуацию, что на сервере сначала был установлен SQL Reporting Services 2005. Для него было создано веб-приложение, работающее на 80-м порту. Впоследствии на тот же сервер было установлено другое веб-приложение, например SharePoint. При этом первое приложение (с Reporting Services) перенесли на другой порт, например на 81. В этом случае, при попытке сконфигурировать RS из консоли управления, будет выдано сообщение об ошибке доступа к веб-службе конфигурации.
Для решения этой проблемы необходимо в конфигурационному файле Reporting Services изменить адрес веб-службы конфигурации.
Файл: C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\rsreportserver.config (вместо MSSQL.3 может быть другая директория, в зависимости от инстанса RS).
Параметр в файле:

<configuration>
	<service>
		<urlroot>http://server:81/reportserver</urlroot>
		...
	</service>
</configuration>

16.10.2007ASP.NET MVC

Instead, you’ll route all end-user interactions to a Controller class instead - which helps ensure clean separation of concerns and testability (it also means no viewstate or page lifecycle with MVC based views)

Музыка для моих ушей.
Ждем релиза. ScottGu обещает, что первая превью-версия выйдет одновременно с RTM’ом Visual Studio 2008 (и .NET Framework 3.5 SP1).
[отсюда]

Шутки шутками, а на днях вышел CTP драйвера MS SQL 2005 для PHP. Я с трудом представляю себе ситуацию, в которой это может пригодиться (ну разве что миграция на ASP.NET), но вдруг…

В любом случае приятно иметь такую возможность.

На сайте Microsoft выложен пример плана развертывания MOSS 2007 в формате Microsoft Project. Ничего неожиданного или супероригинального в плане я не заметил, но в качестве шпаргалки/checklist’а вполне сгодится. 300 пунктов - от обследования до передачи в эксплуатацию. Жаль, что на английском - использовать в качестве рыбы не получится.

Сегодня вышел Community Technical Preview VSeWSS 1.1. Наконец-то появился инструментарий для создания solutions (.WSP-файлов), application-страниц (в папке _layouts) и еще несколько полезных фич.

Помимо встроенной трассировки (через TraceContext), в ASP.NET можно использовать стандартные возможности трассировки, предоставляемые .NET Framework’ом. К таковым относятся классы System.Diagnostics.Trace и System.Diagnostics.Debug. Каждый из этих классов содержит одинаковый набор статических методов (Write, WriteLine и т.п.), отмеченных атрибутом ConditionalAttribute. Атрибут работает следующим образом: если при компиляции символ, который был ему передан в качестве параметра, не определен, то все вызовы метода, на котором висит атрибут, зануляются (преобразуются в nop). Для методов класса Debug атрибут ConditionalAttribute инициализирован символом “DEBUG“, для Trace - соответственно, “TRACE“.

По умолчанию, для обычных проектов (WinApp, Library и т.п.) в конфигурации Debug определены оба символа, а в Release - только символ TRACE. Увы и ах, но это правило не распространяется на веб-проекты в Visual Studio 2005. Связано это с несколько извратной моделью компиляции веб-сайта, но вдаваться в подробности я не хочу. Скажу только, что по умолчанию, символ TRACE не определен ни в режиме сборки Debug, ни в Release, т.е. вызов к System.Diagnostics.Trace.Write…() не происходит. Как же с этим бороться? Есть три способа, разной степени сложности.

  1. Web Deployment Projects (или любой собственноручно написанный MSBuild-файл). В таком проекте можно поиграться с автоматической заменой web.config’а или с различными опциями компиляции (но только напрямую в тексте файла, графический интерфейс VS2005 этого не умеет).
  2. Web Application Project. По сути это шаблон проекта, позволяющий создавать web-приложения в VS2005 так же, как это делалось в VS2003. К сожалению, при этом мы лишаемся всех бонусов 2005-й студии, типа встроенного веб-сервера для отладки. (Upd.: Web Application Project теперь входит в VS 2005 SP1, отдельно его скачивать не надо).
  3. Правка web.config’а нашего приложения. Для определения символа TRACE к нему надо добавить вот такой кусок кода (внутрь элемента ):
<system.codedom>
	<compilers>
		<compiler language="c#;cs;csharp"
			 extension=".cs"
			 compilerOptions="/d:TRACE"
		  	 type="Microsoft.CSharp.CSharpCodeProvider, System,
			      Version=2.0.3500.0, Culture=neutral,
			      PublicKeyToken=b77a5c561934e089" warningLevel="1" />
		<compiler language="VB"
			 extension=".vb"
			 compilerOptions="/d:Trace=true"
			 type="Microsoft.VisualBasic.VBCodeProvider, System,
			      Version=1.0.5000.0, Culture=neutral,
			      PublicKeyToken=b77a5c561934e089" />
	</compilers>
</system.codedom>

Таким же образом можно определять и другие символы (помимо DEBUG и TRACE). Есть только одна проблема: содержимое web.config’а не зависит от режима сборки (Debug/Release/…). В более сложных ситуациях может потребоваться несколько его копий, либо скрипт, заменяющий содержимое в зависимости от режима сборки проекта.

Трассировка веб-приложения, которая является крайне удобным средством отладки и мониторинга, выключена по умолчанию в VS 2005. К счастью, есть несколько вариантов решения этой проблемы; выбор одно из них зависит от условий разработки и личных предпочтений программиста. Надеюсь, что информация в этой записи позволит кому-то сэкономить несколько седых волос с головы и мучительных часов в отладке.

Technorati Tags: , ,

На днях угробил порядка 4 часов своей драгоценной жизни на то, чтобы обеспечить возможность удаленной отладки программы, запускаемой на виртуалке. Представленный ниже сценарий является результатом этих “танцев с бубном”, поэтому не претендует ни на полную достоверность, ни на необходимость выполнения всех пунктов. Это, с одной стороны, памятка лично мне, а с другой - вдруг кому пригодится?

Итак, имеем следующую ситуацию. Стенд разработки и отладки состоит из 3 машин:

  1. WXP-HOST - основная машина (в моём случае это был ноутбук). На ней установлена Windows XP Pro SP2, Visual Studio 2005 и система виртуализации (Virtual PC/Server или VMWare, это не важно). Не является членом домена.
  2. VR-DC - виртуальная машина - контроллер домена DOM1. ОС Windows Server 2003.
  3. VR-2K - виртуальная машина - член домена DOM1. ОС Windows 2000 Pro SP4. Именно на этой машине должна производиться отладка.

Все 3 машины находятся в рамках одной сети, видят и пингуют друг друга. Это исходные условия, теперь перейдем к самому процессу настройки.

  1. На WXP-HOST отключаем все файрволы. Формально это не обязательно, в MSDN написано, какие порты надо открывать. На практике же возиться с встроенным XP’шным файрволом нет никакого желания. Если на машине, где предстоит запускать программу для отладки, стоит Windows XP SP2, то так же отключаем файрвол.
  2. Создаем учетным записи.
    1. Предположим, что на WXP-HOST я работаю под учетной записью WXP-HOST\Dmitriy.
    2. В домене создаем учетку DOM1\Dmitriy с тем же паролем, что и WXP-HOST\Dmitriy (здесь и далее, у одноименных учетных записей должны быть одинаковые пароли!). Заносим её в группу администраторов (Domain Admins).
    3. Локально на VR-2K создаем локальную учетную запись VR-2K\Dmitriy, заносим её в группу локальных администраторов (Administrators).
  3. Настраиваем политики безопасности в домене и на локальных машинах.
    1. На контроллере домена, в Administrative Tools запускаем Domain Security Policy. Далее Security Settings (корень) -> Local Policies -> Security Options -> Network access: Sharing and security model for local accounts. Выбираем Classic - local users authenticate as themselves.
    2. На недоменной машине (WXP-HOST) те же настройки доступны через Control Panel -> Administrative Tools -> Local Security Policy.
  4. Настраиваем DCOM на машине, где будет запускаться отладочная программа. Запускаем dcomcnfg. Для Win2K во вкладке “Безопасность по умолчанию” даём локальным и доменным админам все возможные права. Для WinXP: Component Services -> Computers -> My Computer -> Properties -> COM Security -> Access Permissions -> Edit Limits. Дать права всем заинтересованным лицам, т.е. тем же админам. В крайнем случае, может потребоваться дать права Remote Access ANONYMOUS LOGON’у.
  5. Устанавливаем на отладочной машине (VR-2K) монитор удаленной отладки (в дистрибутиве Visual Studio в папке vs\Remote Debugger\x86 для 32-битной платформы). Принципиальной разницы между запуском его в контексте службы или в интерактивном режиме нет, но мне удобнее пользоваться службой. В любом случае, монитор должен быть запущен в контексте локальной учетной записи (в рассматриваемом сценарии - VR-2K\Dmitriy). Таким образом, у этой учетки должны быть права Logon as Service. Это настраивается либо в Local Security Policy, либо автоматически при настройке учетной записи службы.

После этих телодвижений удаленная отладка на моём стенде заработала.

Еще раз скажу, что всё, описанное выше, это результат танцев с бубном в течении 4 часов. Не факт, что все настройки обязательны. Можно не отключать файрволы, а аккуратно открыть на них необходимые порты. В общем, вариантов много, я лишь привел тот, который для моей конфигурации оказался работоспособным.

Technorati Tags: ,

Сегодня была объявлено о выходе второй беты Visual Studio 2008 (Codename Orcas, внутренняя версия 9.0). VS 2008 включает в себя .NET Framework 3.5 (пока тоже Beta 2), а значит и поддержку множества интересных новых технологий, среди которых:

  • LINQ - языковое расширения запросов к данным.
  • ADO.NET Entity Framework - ORM-решение для ADO.NET.
  • Acropolis - построение композитных Windows-приложений.
  • Astoria - REST-вебслужбы (с сериализацией данных в т.ч. в JSON).

В состав дистрибутива входит, помимо самой Visual Studio, SQL Server Express 2005 (рискну предположить, что в финальной версии будет SQL Express 2008) и SQL Server Compact 3.5 (для установки на клиентские рабочие станции, таблетки и КПК). Стоит так же отметить, что VS 2008 Beta 2 имеет лицензию «Go-Live», т.е. строить с её помощью коммерческие продукты и решения вы можете уже сегодня. Для скачивания доступны следующие версии Visual Studio:

  • Visual Studio 2008 Standard Edition Beta 2
  • Visual Studio 2008 Professional Edition Beta 2
  • Visual Studio Team System 2008 - Team Suite Beta 2
  • Visual Studio Team System 2008 - Team Foundation Server Beta 2
  • Visual Studio Team System 2008 - Test Load Agent Beta 2
  • MSDN Library for Visual Studio 2008 Beta 2

Помимо этого, вы можете скачать виртуальные машину (в формате Virtual PC/Server) c предустановленными Visual Studio Team Suite или с Team Suite и Team Foundation Server. Не может не порадовать и тот факт, что Microsoft продолжила традицию выпуска Express-версий Visual Studio (абсолютно бесплатных, в т.ч. и для коммерческого использования). Весь набор “экспрессов” так же доступен для загрузки.

P.S. Пусть вас не смущают расширения файлов IMG. Это абсолютно нормальные образы DVD, без проблем монтируются в виртуальные машины и всевозможными эмуляторами DVD-приводов (Daemon Tools и т.п.).

29.06.2007VMRC Plus

Не могу не поделиться ссылкой на замечательную замену тому вебинтерфейсному ужасу, который поставляется вместе с Virtual Server 2005. Знакомьтесь: VRMC Plus. Windows-приложение для управление виртуальными серверами. Предоставляет кучу возможностей, включая drag’n'drop для .vmc, .iso и .vhd файлов, библиотеку сохраненных состояний, скриншоты рабочих столов виртуальных машин и т.д.

Как в анекдотах, “у меня есть две новости, плохая и хорошая”.

В Excel 2003 была возможность двусторонней синхронизации между таблицей и списком на SharePoint-сайте. При необходимости поддерживать в актуальном виде список, состоящий из нескольких сотен и более элементов, такая возможность представляется крайне полезной, даже незаменимой.

Плохая новость заключается в том, что почему-то в Excel 2007 нас этой возможности лишили. Т.е. загружать данные из списка можно, а вот двусторонняя синхронизация не поддерживается. По ссылке описан обходной маневр, включающий в себя довольно муторную возню с экспортом и импортом данных, написанием VBA-скриптов и т.п. Но, скорее всего, теперь все это станет не актуально. Почему?

Так вот, хорошая новость: Microsoft выпустил модуль (add-in) для Excel 2007, обеспечивающий нормальную двустороннюю синхронизацию списков. Счастливые обладатели лицензионного Office 2007 могу загрузить его, установить и наслаждаться жизнью. К модулю прилагается поясняющая статья с картинками, подробно иллюстрирующая весь (нехитрый) механизм работы. Единственная проблема состоит в том, что файл с синхронизируемой таблицей должен быть сохранен в формате Excel 97-2003, но с этим, я думаю, можно смириться.

Technorati Tags: ,


© 2007 All about IT | iKon Wordpress Theme создана TextNData | Разработано на Wordpress | Локализация: Blogstyle.ru