WSS 3.0 ?

2 views
Skip to first unread message

Mariusz, Gorzoch

unread,
Feb 21, 2008, 4:02:33 AM2/21/08
to Trójmiejska Grupa .NET

Witam

Czy ktos z grupowiczów zajmuje się tematem WSSów ? W nabliższym czasie
chce wejść w WSS 3.0 i zacząć budować aplikacje pod niego. Jak do tej
pory znalazłem kilka ciekawych webcastów na dnrtv.com przygotowanych
przez Sahil Mailk-a i nie powiem.. bardzo ciekawa technologia.
Chcialbym jednak cały temat ugryźć bardziej od strony projektowania
webpartów i tego jak się to powinno robić, tak żeby robić to dobrze.

W związku z tym:

czy ma ktoś może jakieś linki, materiały opisujące dobre techniki
podejścia do projektowania webpartów ? Nie chodzi mi bynajmniej tutaj
o to "Jak stworzyć web part" - to wiem. Dodam, że mam spore
doświadczenie w .Net, ale widzę, że nie wszystkie rozwiązania z tamtąd
przenoszą się w prostej lini do WSSów.

Pewnym przykładem tego czego szukam może być : "Jak rozwiązywać
komunikacje WebPartów z bazą danych ?". W przypadku aplikacji .NET
pisałałem bibliotekę, która kożystała z enterpriselibrary, a które
kożystały z definicji providera ustawionej w web.configu. Niby można
zrobić podobnie w WSSie, ale gdzieś ktoś pisał, że dla przypadku
WebPartów poprawnie powinno się to robić, poprzez zbudowanie web
serwisu, który będzie źródłem dla budowanego webpartu.

Dzięki z góry za wszelkie sugestie i materiały.

pozdrawiam
M

Marcin Hoppe

unread,
Feb 21, 2008, 4:59:27 AM2/21/08
to tg-...@googlegroups.com
21-02-08, Mariusz, Gorzoch <Mariusz...@gmail.com> napisał(a):

> Czy ktos z grupowiczów zajmuje się tematem WSSów ? W nabliższym czasie
> chce wejść w WSS 3.0 i zacząć budować aplikacje pod niego. Jak do tej
> pory znalazłem kilka ciekawych webcastów na dnrtv.com przygotowanych
> przez Sahil Mailk-a i nie powiem.. bardzo ciekawa technologia.
> Chcialbym jednak cały temat ugryźć bardziej od strony projektowania
> webpartów i tego jak się to powinno robić, tak żeby robić to dobrze.

Ja pracuję z WSS 3.0 i MOSS 2007 od ok. pół roku, więc wiem jeszcze
nie za dużo :). Jeśli chodzi o Web Party, to obowiązkowa książka to
"ASP.NET 2.0 Web Parts in Action" (http://www.manning.com/neimke/).
Nie dotyczy ona SharePointa, ale to chyba najlepsza książka nt. Web
Partów. Cały czas czeka w kolejce do przeczytania.

> W związku z tym:
>
> czy ma ktoś może jakieś linki, materiały opisujące dobre techniki
> podejścia do projektowania webpartów ? Nie chodzi mi bynajmniej tutaj
> o to "Jak stworzyć web part" - to wiem. Dodam, że mam spore
> doświadczenie w .Net, ale widzę, że nie wszystkie rozwiązania z tamtąd
> przenoszą się w prostej lini do WSSów.
>
> Pewnym przykładem tego czego szukam może być : "Jak rozwiązywać
> komunikacje WebPartów z bazą danych ?". W przypadku aplikacji .NET
> pisałałem bibliotekę, która kożystała z enterpriselibrary, a które
> kożystały z definicji providera ustawionej w web.configu. Niby można
> zrobić podobnie w WSSie, ale gdzieś ktoś pisał, że dla przypadku
> WebPartów poprawnie powinno się to robić, poprzez zbudowanie web
> serwisu, który będzie źródłem dla budowanego webpartu.
>
> Dzięki z góry za wszelkie sugestie i materiały.

Niestety nie pisałem Web Partów, które komunikują się z zewnętrznym
źródłem danych, tylko takie, które korzystają z SharePoint Object
Model. Widzę jednak pewien problem w używaniu ustawień z Web.config
przez WP: nie wiem, czy mechanizm deploymentu (tzw. Features) pozwala
dopisać coś do Web.config podczas deploymentu.

Jakbyś naszkicował konkretny scenariusz, żebyśmy mogli rozmawiać o
konkretnym przykładzie, to myślę, że byłoby łatwiej.

Pozdrawiam!
Marcin

Mariusz, Gorzoch

unread,
Feb 21, 2008, 5:22:47 AM2/21/08
to Trójmiejska Grupa .NET

Dzięki za szybką odpowiedz.

On 21 Lut, 10:59, "Marcin Hoppe" <marcin.ho...@gmail.com> wrote:
> 21-02-08, Mariusz, Gorzoch <Mariusz.Gorz...@gmail.com> napisał(a):
>
> >  Czy ktos z grupowiczów zajmuje się tematem WSSów ? W nabliższym czasie
> >  chce wejść w WSS 3.0 i zacząć budować aplikacje pod niego. Jak do tej
> >  pory znalazłem kilka ciekawych webcastów na dnrtv.com przygotowanych
> >  przez Sahil Mailk-a i nie powiem.. bardzo ciekawa technologia.
> >  Chcialbym jednak cały temat ugryźć bardziej od strony projektowania
> >  webpartów i tego jak się to powinno robić, tak żeby robić to dobrze.
>
> Ja pracuję z WSS 3.0 i MOSS 2007 od ok. pół roku, więc wiem jeszcze
> nie za dużo :). Jeśli chodzi o Web Party, to obowiązkowa książka to
> "ASP.NET 2.0 Web Parts in Action" (http://www.manning.com/neimke/).
> Nie dotyczy ona SharePointa, ale to chyba najlepsza książka nt. Web
> Partów. Cały czas czeka w kolejce do przeczytania.
>

Dzięki wielkie za namiar na książke. Już chcę ją przecytać!

>
>
> >  W związku z tym:
>
> >  czy ma ktoś może jakieś linki, materiały opisujące dobre techniki
> >  podejścia do projektowania webpartów ? Nie chodzi mi bynajmniej tutaj
> >  o to "Jak stworzyć web part" - to wiem. Dodam, że mam spore
> >  doświadczenie w .Net, ale widzę, że nie wszystkie rozwiązania z tamtąd
> >  przenoszą się w prostej lini do WSSów.
>
> >  Pewnym przykładem tego czego szukam może być : "Jak rozwiązywać
> >  komunikacje WebPartów z bazą danych ?". W przypadku aplikacji .NET
> >  pisałałem bibliotekę, która kożystała z enterpriselibrary, a które
> >  kożystały z definicji providera ustawionej w web.configu. Niby można
> >  zrobić podobnie w WSSie, ale gdzieś ktoś pisał, że dla przypadku
> >  WebPartów poprawnie powinno się to robić, poprzez zbudowanie web
> >  serwisu, który będzie źródłem dla budowanego webpartu.
>
> >  Dzięki z góry za wszelkie sugestie i materiały.
>
> Niestety nie pisałem Web Partów, które komunikują się z zewnętrznym
> źródłem danych, tylko takie, które korzystają z SharePoint Object
> Model. Widzę jednak pewien problem w używaniu ustawień z Web.config
> przez WP: nie wiem, czy mechanizm deploymentu (tzw. Features) pozwala
> dopisać coś do Web.config podczas deploymentu.
>
> Jakbyś naszkicował konkretny scenariusz, żebyśmy mogli rozmawiać o
> konkretnym przykładzie, to myślę, że byłoby łatwiej.

Jasne,
wybierz jeden z poniższych.

Przykład 1:
Generalnie zastanawiałem się jak powinno się rozwiązać w WSS problem
utworzenia webPartu, który miałby prezentować dane z zewnętrznej
aplikacji. Powiedzmy, ze chodzi przykładowo o jakąś bazę "Zasobów
ludzkich", która posiada informacje o wszystkich pracownikach, ich
urlopach, pozycji w organizacji, itp. Aplikacja działa na oddzielnej
maszynie i przechowuje swoje dane w Sql 2005. Chciałbym napisać
WebPart-a, który podpina się do bazy i pobiera interesujące mnie dane
(przykładowo imie, nazwisko, stanowisko i przełożonego). I teraz
pytanie : jak to powinno być zorganizowane ? Jak dostac się do takiej
bazy ?

Przykład 2:
Sytuacja może bardziej prosta. Piszemy poprostu swojego WebParta i
chcemy przechowywać w nim dane na temat klientów, których firma
obsługuje. Po napisaniu jego będziemy napewno chcieli dopisać potem
webService, czy też inne aplikacje poza WSSem, które będą dostawały
się do tych informacji. Innymi słowy, nie chciałbym aby takie
informacje były przechowywane w samym WSSie, a raczej w dedykowanej
bazie do przechowywania takich informacji. Jak najlepiej podejść do
takiego problemu ?

Odrazu też dodam, że dopiero zaczynam poruszać się w WSSie i być może
problemy które opisałem w pełni się dają zrealizować z wykorzystaniem
tego co on sam oferuje. Jeżeli tak jest to będę wdzięczny za
naprowadzenie.

>
> Pozdrawiam!
> Marcin- Ukryj cytowany tekst -
>
> - Pokaż cytowany tekst -

Jeszcze raz dzieki za szybki feedback

pozdrawiam
M

Marcin Hoppe

unread,
Feb 22, 2008, 5:32:41 AM2/22/08
to tg-...@googlegroups.com
21-02-08, Mariusz, Gorzoch <Mariusz...@gmail.com> napisał(a):
> Dzięki wielkie za namiar na książke. Już chcę ją przecytać!

U mnie też czeka w kolejce.

> Jasne,
> wybierz jeden z poniższych.
>
> Przykład 1:

[ciach]

> Przykład 2:
[ciach]

> Odrazu też dodam, że dopiero zaczynam poruszać się w WSSie i być może
> problemy które opisałem w pełni się dają zrealizować z wykorzystaniem
> tego co on sam oferuje. Jeżeli tak jest to będę wdzięczny za
> naprowadzenie.

Odpowiadam dzisiaj z opóźnieniem, bo musiałem poszukać w Internecie i
książkach. Wydaje mi się, że integrację z zewnętrznymi aplikacjami
robi się w SharePoincie przez Business Data Catalog. Z tego, co się
dowiedziałem, to definiuje się tam połączenia do zewnętrznych źródeł
danych (bazy danych, usługi Webowe) i potem korzysta się z modelu
obiektowego tego Business Data Catalog. Zaleta: w Web Parcie mamy
dostęp do zewnętrznych danych bez dodatkowego wysiłku, ładnie
integruje się to z SharePointowym wyszukiwaniem itp. Wada: Business
Data Catalog jest dostępny tylko w MOSS, w WSS go nie ma.

Jeśli chodzi o rozwiązanie bazujące tylko na WSS, to chyba niestety
trzeba trzymać ustawienia gdzieś w systemie plików WSSa (np. w
folderze do którego instaluje się Feature -- zaletą jest łatwość
deploymentu) i odczytywać je za każdym połączeniem do bazy danych.

Jak znajdę jakieś inne rozwiązanie, np. jak za pomocą dostępnych w WSS
mechanizmów deploymentu dodać connection string do pliku Web.config,
to dam znać.

Pozdrawiam!
Marcin

Mariusz, Gorzoch

unread,
Feb 22, 2008, 5:44:17 AM2/22/08
to Trójmiejska Grupa .NET

Witam

i jeszcze raz dziekuje za odpowiedz.

Jeżeli chodzi o BCL, to czytałem o niej i widziałęm niezły webcast
( http://www.dnrtv.com/default.aspx?showNum=62 ). Zapowiada sie ona
bardzo obiecująca, tyle, że tak jak powiedziałeś - dostępna ona jest
tylko w MOSS :(.

W między czasie przyszły mi dwa rozwiązania do głowy:

1.
Dobudowanie custom editor zone, w której będzie wpisywało się
połączenie do bazy (server,baza,user,pass) a które będą przechowywane
przez WSS. Oczywistą wadą jest tutaj fakt, ze trzbea będzie to klepać
przy każdym dodaniu webParta.

2.
Przejście na WebSerwisy i oparcie całej warstwy biznessowej o nie. W
takim przypadku trzeba byłoby też dopisać custom editor zone i prosić
użytkownika o wpisanie adresu webserwisu. Trochę to lepsze od
podejścia 1, ale zawsze też wymaga tego, żeby to wpisywać przy dodaniu
webParta do strony.

Jak będziesz miał chwilę czasu to napisz mi proszę jakie wady mogą
mięć powyższe rozwiązania ?

ps. Przebiłem się już przez połowę książki którą zaproponowałeś i
trzeba oddać, że to dobra pozycja, która układa wszystko w głowie.

pozdrawiam i jeszcze raz dzięki za feedback
M


On 22 Lut, 11:32, "Marcin Hoppe" <marcin.ho...@gmail.com> wrote:
> 21-02-08, Mariusz, Gorzoch <Mariusz.Gorz...@gmail.com> napisał(a):

Marcin Hoppe

unread,
Feb 22, 2008, 6:04:25 AM2/22/08
to tg-...@googlegroups.com
22-02-08, Mariusz, Gorzoch <Mariusz...@gmail.com> napisał(a):

> Jeżeli chodzi o BCL, to czytałem o niej i widziałęm niezły webcast
> ( http://www.dnrtv.com/default.aspx?showNum=62 ). Zapowiada sie ona
> bardzo obiecująca, tyle, że tak jak powiedziałeś - dostępna ona jest
> tylko w MOSS :(.

No niestety, WSS to tylko podstawa. Takie bajery jak BDC to tylko w MOSSie.

> W między czasie przyszły mi dwa rozwiązania do głowy:
>
> 1.
> Dobudowanie custom editor zone, w której będzie wpisywało się
> połączenie do bazy (server,baza,user,pass) a które będą przechowywane
> przez WSS. Oczywistą wadą jest tutaj fakt, ze trzbea będzie to klepać
> przy każdym dodaniu webParta.
>
> 2.
> Przejście na WebSerwisy i oparcie całej warstwy biznessowej o nie. W
> takim przypadku trzeba byłoby też dopisać custom editor zone i prosić
> użytkownika o wpisanie adresu webserwisu. Trochę to lepsze od
> podejścia 1, ale zawsze też wymaga tego, żeby to wpisywać przy dodaniu
> webParta do strony.
>
> Jak będziesz miał chwilę czasu to napisz mi proszę jakie wady mogą
> mięć powyższe rozwiązania ?

Komentarz do obu rozwiązań:

Rozwiązanie oparte o Web serwisy jest fajniejsze i da się je zrobić
mniejszym nakładem kodu, np. zapuszczając transformację XSLT
bezpośrednio na danych otrzymanych z Web serwisu. Zgaduję, że często
może to oszczędzić kodowania w C# albo VB.NET.

Co do przechowywania adresu Web serwisu, to faktycznie można użyć
właściwości Web Parta i ustalić jej zasięg na dzielony. Wtedy
wszystkie instancje tego Web Parta dzielą tę samą wartość ustawienia.
Dodatkowo, można napisać własnego editor parta, który będzie pozwalał
na edycję tego ustawienia jedynie administratorowi. I gotowe :).

> ps. Przebiłem się już przez połowę książki którą zaproponowałeś i
> trzeba oddać, że to dobra pozycja, która układa wszystko w głowie.

Wygląda ona naprawdę dobrze. U mnie czeka w kolejce, ale pomogła mi
już kilka razy.

Pozdrawiam!
Marcin

Mariusz, Gorzoch

unread,
Feb 22, 2008, 6:16:16 AM2/22/08
to Trójmiejska Grupa .NET


[Ciach]
.
>
> > W między czasie przyszły mi dwa rozwiązania do głowy:
> >
> > 1.
> > Dobudowanie custom editor zone, w której będzie wpisywało się
> > połączenie do bazy (server,baza,user,pass) a które będą przechowywane
> > przez WSS. Oczywistą wadą jest tutaj fakt, ze trzbea będzie to klepać
> > przy każdym dodaniu webParta.
> >
> > 2.
> > Przejście na WebSerwisy i oparcie całej warstwy biznessowej o nie. W
> > takim przypadku trzeba byłoby też dopisać custom editor zone i prosić
> > użytkownika o wpisanie adresu webserwisu. Trochę to lepsze od
> > podejścia 1, ale zawsze też wymaga tego, żeby to wpisywać przy dodaniu
> > webParta do strony.
> >
> > Jak będziesz miał chwilę czasu to napisz mi proszę jakie wady mogą
> > mięć powyższe rozwiązania ?
>
> Komentarz do obu rozwiązań:
>
> Rozwiązanie oparte o Web serwisy jest fajniejsze i da się je zrobić
> mniejszym nakładem kodu, np. zapuszczając transformację XSLT
> bezpośrednio na danych otrzymanych z Web serwisu. Zgaduję, że często
> może to oszczędzić kodowania w C# albo VB.NET.
>
> Co do przechowywania adresu Web serwisu, to faktycznie można użyć
> właściwości Web Parta i ustalić jej zasięg na dzielony. Wtedy
> wszystkie instancje tego Web Parta dzielą tę samą wartość ustawienia.
> Dodatkowo, można napisać własnego editor parta, który będzie pozwalał
> na edycję tego ustawienia jedynie administratorowi. I gotowe :).

Super. Własnie się zastanawiałem nad kwestią tego, czy da się zbudować
editor part-a, który będzie widoczny tylko dla admina. Jeżeli tak jest
to rewelacyjnie. Myslę, ze dopóki nie poznam bardziej wssów to będę
się opierał o takie rozwiązanie.

>
> > ps. Przebiłem się już przez połowę książki którą zaproponowałeś i
> > trzeba oddać, że to dobra pozycja, która układa wszystko w głowie.
>
> Wygląda ona naprawdę dobrze. U mnie czeka w kolejce, ale pomogła mi
> już kilka razy.
>
> Pozdrawiam!
> Marcin
>
> >
>

pozdrawiam i wielkie dzięki za feedback
M

Marcin Hoppe

unread,
Feb 22, 2008, 6:23:28 AM2/22/08
to tg-...@googlegroups.com
22-02-08, Mariusz, Gorzoch <Mariusz...@gmail.com> napisał(a):
> Super. Własnie się zastanawiałem nad kwestią tego, czy da się zbudować
> editor part-a, który będzie widoczny tylko dla admina. Jeżeli tak jest
> to rewelacyjnie. Myslę, ze dopóki nie poznam bardziej wssów to będę
> się opierał o takie rozwiązanie.

Powinno się to dać zrobić. Jakbyś miał jakieś problemy to pisz, co
dwie głowy to nie jedna. A jak Ci się uda, to też napisz!

Pozdrawiam!
Marcin

Mariusz, Gorzoch

unread,
Feb 25, 2008, 2:43:14 PM2/25/08
to Trójmiejska Grupa .NET

Jasne,

i jeszcze raz dzieki za pomoc

pozdrawiam
M

On 22 Lut, 12:23, "Marcin Hoppe" <marcin.ho...@gmail.com> wrote:
> 22-02-08, Mariusz, Gorzoch <Mariusz.Gorz...@gmail.com> napisał(a):

Artur Zarski

unread,
Feb 25, 2008, 3:21:08 PM2/25/08
to tg-...@googlegroups.com
Cześć,
Do WebPArtów można zastosować audiencje, w zależności od tego jak ustawimy widoczność to te grupy/osoby będą widzieć.
Czego dokładnie potrzebujecie wiedzieć o MOSS?
Pozdrawiam
Artur

Marcin Hoppe

unread,
Feb 25, 2008, 3:48:02 PM2/25/08
to tg-...@googlegroups.com
25-02-08, Artur Zarski <art...@microsoft.com> napisał(a):

> Do WebPArtów można zastosować audiencje, w zależności od tego jak ustawimy
> widoczność to te grupy/osoby będą widzieć.
> Czego dokładnie potrzebujecie wiedzieć o MOSS?

Kolega pisał o WSS, w którym nie ma audiences. Poza tym audiences to
moim zdaniem środek do "dystrybucji" contentu, czyli jak
zaimplementować to, żeby ludzie widzieli to, co ich interesuje.

Mariuszowi chodzi raczej o security, czyli jak pozwolić tylko wybranym
użytkownikom zmieniać ustawienia oprogramowania.

Problem o którym dyskutowaliśmy jest następujący: chcemy napisać Web
Parta, który ma jakieś ustawienie, np. adres Web serwisu albo
connection string do bazy danych.

Moje pytanie brzmi: gdzie przechowywać to ustawienie tak, żeby było
zgodnie z regułami sztuki. Przez reguły sztuki mam na myśli np.
deployment Web Parta poprzez mechanizm Features.

Wymyślilismy więc, żeby ustawienie zapisać we właściwości Web Parta,
która ma ustawiony zakres personalizacji (personalization scope) na
Shared i za pomocą specjalnego editor parta dać dostęp do edycji tylko
administratorom.

Dla niezainteresowanych to pewnie mało zrozumiałe, ale gdybyś mógł nam
Arturze coś poradzić, to byłoby fajnie :).

Pozdrawiam!
Marcin

Reply all
Reply to author
Forward
0 new messages