Search Results

Search found 4690 results on 188 pages for 'ran gualberto'.

Page 88/188 | < Previous Page | 84 85 86 87 88 89 90 91 92 93 94 95  | Next Page >

  • recovering raid 0 hard disk

    - by Hiawatha
    I bumped to a huge (for me) problem. I was running dual boot system (win 7 / linux) and at some point I decided to test fedora ( I am new in Linux ). My hard disk conf: 3 hard disks each 1 TB, 2 set to raid 0 with windows running on it and 1 for linux. After installing it from live usb I found out that windows 7 is not in grub anymore and while booting shows raid error. I installed back Ubuntu and ran Disk Utility and checked now I have one disks (raid 0) failed (READ) error. First has 5 bad sectors and second has 1 bad sector. And now I dont know what to do and how to repair. further I dont know which data i could provide to get help. I tried ntfsfix and got this output: Mounting volume... NTFS signature is missing. FAILED Attempting to correct errors... NTFS signature is missing. FAILED Failed to startup volume: Invalid argument NTFS signature is missing. Trying the alternate boot sector Unrecoverable error Volume is corrupt. You should run chkdsk. #sudo ntfs-3g -o force,rw /dev/sdb /media/windows NTFS signature is missing. Failed to mount '/dev/sdb': Invalid argument The device '/dev/sdb' doesn't seem to have a valid NTFS. Maybe the wrong device is used? Or the whole disk instead of a partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?

    Read the article

  • Dell Inspiron7520 and ubntu 12.04 issues

    - by user91358
    I have a DELL Inspiron 7520 in the highest configuration: 3rd Generation Intel® Core™ i7-3612QM processor (6M Cache, up to 3.1 GHz) 15.6" Full High Definition (1080p) LED Display 8GB3 Dual Channel DDR3 SDRAM at 1600MHz 1TB 5400RPM SATA HDD + 32GB mSATA SSD w/Intel Smart Response Blu-ray Disc (BD) Combo (Reads BD and Writes to DVD/CD) AMD Radeon™ HD 7730M 2GB 6.09 lbs and I have installed Ubuntu 12.04 few days ago and I'm facing some issues: 1) sometimes the whole ntb freezes and I have to hold power button for 5 secs to shut it down. I think it is something with VGA and connected external monitor. I have read somewhere that it is already a reported bug, but what I am not sure about that it is doing sporadically. Sometimes it freezes right after I log in, sometime I ran few hours and then it freezes. I am using those proprietary drivers but I wasn't been able to install those with updates. 2) the next issue is the fan is quite noisy even when the ntb is almost Idle. (max 10% CPU usage). Can you recommend me some software which could do this power management to lower the noise? I have tried CPU frequency scaling indicator, but it seems that it has not any effects. 3) and issue no. 3: when I want to log out, restart or shutdown using the menu in upper right corner the upper and left trays disappear, but programs are still running and they won't close to complete log out or shutting down the OS. When I use the CLI command, it works fine. Thanks for any help you can provide.

    Read the article

  • Ubuntu 12.04 gets overheated, whereas I have no heating problems on Windows 7 whatsoever

    - by G K
    I bought a new laptop which came pre-installed with Windows 7. I love working on Ubuntu and hence installed it. I can work on Windows for 6 hours at a stretch and feel the laptop being only slightly warm, but 15 minutes into running Ubuntu and my laptop is too hot. The battery also drains out very quickly on Ubuntu. 1.5 hrs of backup on Ubuntu compared to 5-6 hrs on Windows. I previously owned a Dell Inspiron N5010 and everything ran smoothly on that. No heating issues. It came with intel i3 processor. So I'm wondering whether this problem has something to do with the processor? (AMD A8) Specs: HP Pavilion G6-2005AX Laptop (APU Quad Core A8/ 4GB/ 500GB/ Win7 HB/ 1.5GB Graph) 1 GB AMD Radeon HD 7670M Dedicated 512 MB AMD Radeon HD 7640G Graphics Integrated Is there any fix for this problem? Thanks in advance. Edit: I've installed ATI proprietary drivers suggested by Ubuntu.

    Read the article

  • NetworkManager detects no networks with a RTL8188CE

    - by Cormac O'Brien
    I'm on a 2011 Lenovo Thinkpad T420i with a Realtek RTL8188CE WiFi adapter. Here's the scenario: I pop in the Ubuntu LiveCD to install. Laptop detects all networks in range, I connect to my home network, internet working great. Once Ubuntu finishes installing, the home network I am connected to is the only one which appears in the applet list. Upon restarting or waking from suspend, NetworkManager does not detect any networks – it simply displays "Disconnected" under the Wireless Network section of the menu. I am able to connect to my home network by using the "Connect to Hidden Wireless Network" option and it works immediately. I have yet to test if this works with other SSIDs. I have tried reinstalling the entire OS as well as NetworkManager and my wireless drivers. For hardware info, I ran: cormac@cormac-T420:~$ sudo lshw -c network Here is the output for my wireless card: *-network description: Wireless interface product: RTL8188CE 802.11b/g/n WiFi Adapter vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:03:00.0 logical name: wlan0 version: 01 serial: d0:df:9a:08:73:50 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=rtl8192ce driverversion=3.2.0-26-generic firmware=N/A ip=192.168.1.138 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn resources: irq:17 ioport:5000(size=256) memory:f2500000-f2503fff I can provide more information if required. This was not a problem in Natty or Oneiric. I hope this can be fixed, I don't want to have to ask for an SSID wherever I need to connect.

    Read the article

  • Wireless (Broadcom) just stopped working after putting machine to sleep!

    - by tommed
    Had the wireless working on my Dell Studio 15 for months now (Ubuntu 10.04 64bit, now 10.10 64bit). But I shut the lid this morning, which put the machine to sleep; when I openend it again the wireless would no longer connect to anything :'( I rebooted the machine, but that didn't help. I then did ifconfig eth1 {down,up}, but that didn't help, then I did iwconfig eth1 power {down,on}, but that didn't work. So I uninstalled the wireless driver (Broadcom STA) from additional drivers (reboot in the middle), but it still won't work anymore!! This is the trace from daemon.log, looks like it is a driver issue? Nov 28 12:26:39 ulap NetworkManager[1218]: (eth1): supplicant connection state: disconnected - scanning Nov 28 12:26:39 ulap NetworkManager[1218]: (eth1): supplicant connection state: scanning - disconnected Nov 28 12:26:45 ulap NetworkManager[1218]: (eth1): supplicant connection state: disconnected - scanning Nov 28 12:26:50 ulap wpa_supplicant[1295]: Trying to associate with MY_MAC_CODE (SSID='MY_WIRESS_SSID' freq=2417 MHz) Nov 28 12:26:50 ulap wpa_supplicant[1295]: Association request to the driver failed Nov 28 12:26:50 ulap NetworkManager[1218]: (eth1): supplicant connection state: scanning - associating Nov 28 12:26:51 ulap wpa_supplicant[1295]: Associated with MY_MAC_CODE Nov 28 12:26:51 ulap NetworkManager[1218]: (eth1): supplicant connection state: associating - associated Nov 28 12:27:01 ulap wpa_supplicant[1295]: Authentication with MY_MAC_CODE timed out. Nov 28 12:27:01 ulap NetworkManager[1218]: (eth1): supplicant connection state: associated - disconnected Anyone seen this, or know how I can get around this issue? It had been working fine up until now?! Even ran update-manager, but there wasn't any changes to the wireless drivers (or any related networking areas). Running the most up-to-date version of 10.10 x64. My android phone and other devices are still working on the wireless.

    Read the article

  • 12.04 doesn't boot anymore after a power failure

    - by Felix
    I'm a Windows user and I have no experience with Linux and Ubuntu. I installed Ubuntu 12.04 on my netbook (Asus 1215B) and everything works fine. Yesterday I ran the "update application" and updated over 120 "things" (I have no idea what exactly). After that I was asked to reboot, and I did. Ubuntu starts again and at the load screen with these 5 dots that normally begin to change color, it freezes. After 20 minutes I took out the battery to try another reboot (yes, not the the best idea), and now nothing happens. I boot from the HDD and I get an Error BOOTMGR is missing. I have important data on the hard drive. Is there an option to get this fixed? Or if not, to at least get the data from the hard drive? Ubuntu 12.04 64-bit Edit: it is ONLY Ubuntu on this Netbook, which uses the whole 500gb HDD as 1 Partition. Filesystem is NTFS. Whole Hardware seems okay. The USB drive which i used to instl the Os was formated in fat32

    Read the article

  • Lost access to the unity interface how to fix? (ubuntu 11.10)

    - by Tal Galili
    o.k, this is embarrassing: I have installed Compiz Config Settings Manager and tried to fix it so that the transition time between changing tabs (using alt+tab) will be short. by accident I un-pressed V from something else, and it asked me about a conflict - I pressed the "x" button to close the window and as a result I stopped seeing the unity interface. That is - I can not see any buttons of the left side. I went to the terminal (ctrl+alt+F1) and ran ccsm As a result I got the following error: $ ccsm /usr/lib/python2.7/site-packages/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display warnings.warn(str(e), _gtk.Warning) Traceback (most recent call last): File "/usr/bin/ccsm", line 93, in <module> import ccm File "/usr/lib/python2.7/site-packages/ccm/__init__.py", line 1, in <module> from ccm.Conflicts import * File "/usr/lib/python2.7/site-packages/ccm/Conflicts.py", line 26, in <module> from ccm.Constants import * File "/usr/lib/python2.7/site-packages/ccm/Constants.py", line 29, in <module> CurrentScreenNum = gtk.gdk.display_get_default().get_default_screen().get_number() AttributeError: 'NoneType' object has no attribute 'get_default_screen' What should I do next? Thanks.

    Read the article

  • On Developing Web Services with Global State

    - by user74418
    I'm new to web programming. I'm more experienced and comfortable with client-side code. Recently, I've been dabbling in web programming through Python's Google App Engine. I ran into some difficulty while trying to write some simple apps for the purposes of learning, mainly involving how to maintain some kind of consistent universally-accessible state for the application. I tried to write a simple queueing management system, the kind you would expect to be used in a small clinic, or at a cafeteria. Typically, this is done with hardware. You take a number from a ticketing machine, and when your number is displayed or called you approach the counter for service. Alternatively, you could be given a small pager, which will beep or vibrate when it is your turn to receive service. The former is somewhat better in that you have an idea of how many people are still ahead of you in the queue. In this situation, the global state is the last number in queue, which needs to be updated whenever a request is made to the server. I'm not sure how to best to store and maintain this value in a GAE context. The solution I thought of was to keep the value in the Datastore, attempt to query it during a ticket request, update the value, and then re-store it with put. My problem is that I haven't figured out how to lock the resource so that other requests do not check the value while it is in the middle of being updated. I am concerned that I may end up ticket requests that have the same queue number. Also, the whole solution feels awkward to me. I was wondering if there was a more natural way to accomplish this without having to go through the Datastore. Can anyone with more experience in this domain provide some advice on how to approach the design of the above application?

    Read the article

  • Can't boot to Windows 7 after installing Ubuntu 11.10

    - by les02jen17
    Here's what happened: I have 2 HDDs. 1st HDD is partitioned like this: C - Windows 7 D* - Empty drive where I installed Ubuntu E - Personal Files F - Personal Files 2nd HDD is partitioned like this: G - Personal Files *the D partition is originally part of the C partition. I resized it (using Easus Partition Master in Windows) and defragged it prior to installing Ubuntu. I installed Ubuntu by booting to the Ubuntu Secure Remix CD, and chose the D partition to install Ubuntu. I did not create a swap drive, and I mounted the / to the D partition. I didnt know where to mount the others, so I just thought by mounting the / to D, it would be okay. After the long installation, upon rebooting, I can't access Windows AND Ubuntu. I get an infinite bootloop and eventually the choices to boot to Safe Modes, Last Known Good Configuration and Start Windows normally. After failing in all of them, I placed the CD back and ran the Boot Repair. I chose the MBR 1st, it didn't work. I then chose the GRUB 2nd and now I was able to boot to the Ubuntu I installed, but not to my Windows 7! I'm using my newly installed Ubuntu while writing this. I hope you can help me. I did the best I could! Here's the link to the boot repair log: http://paste.ubuntu.com/919354/ Thanks in advance!

    Read the article

  • Will Ubuntu work out on my mother's computer?

    - by PleaseStand
    My mother had an old Compaq desktop computer running Windows 98, which she used for occasional Web browsing and playing cards. Recently, a relative brought up a newer computer; it ran Windows XP. Unfortunately, the hard drive failed soon afterward, forcing me to reinstall the operating system. Not having the original Windows disc or product key led me to consider Ubuntu Linux. Will it work for mom? Is the hardware compatible? (Check the history of this question for the full specifications.) Would Ubuntu/Xubuntu suffice, or would I be better off buying a new copy of Windows? Is her card game (Hoyle Card Games 3) likely to run on Wine? I believe the minimum system requirement is Windows 95. Failing Wine compatibility, is running Windows 98 on VirtualBox an option on such an old computer? Are there any equally good card games for Linux? She plays mainly Bridge, Poker, and Solitaire. Is there any "Large Fonts" option for those with poor vision? Is it possible to use a serial mouse?

    Read the article

  • dist-upgrade broke my insatll HELP

    - by diefuchsjagden
    so I ran apt-get update; apt-get dist-upgrade the upgrade failed and I lost the gui, I have an encrypted /home drive. When I run apt-get * (any command) I have all kinds of errors mostly missing depends and thats because apparently my network stack is gone. I have no NIC if I run ifconfig. It doesn't even show up with lspci If I were to do a "clean" install of 10.04 LTS which is what I had on my on my build, will I lose all my data? BTW I was just using Ubuntu's default encryption to manage the encryption using my PSWD as the key so if I were to use the same user name and PSWD would my data be accessible? I can see my data from command line, when or if Xorg does start it just loads a basic window with nothing but a black X in the middle of the screen which I can only assume is my mouse cursor but it doesn't move! Reddit /r/linux had some ideas none of which worked was, no help. And apparently /r/ubuntu is full of jerks because all they did was ridicule me. If I can get my install back I probably will be switching back to either Slackware or Gentoo. The Ubuntu forums were of no help they had the same suggestion as /r/linux. I am about to just run my back up script to my back up drives and nuke everything else but I'd rather not.

    Read the article

  • No WIFI on Ubuntu 12.04 LTS after today software update

    - by Adchara
    I just got new dell inspiron3537 with Ubuntu 12.04 LTS (no windows O/S). It got some wireless (hard block) yesterday. So, this morning, I ran the software update all the security update. After that I can't see "Wireless" in system setting. So, I updated all the software update and looked thru several web site and found "sudo lshw -c network" command. I tried and found the result below. *-network description: Ethernet interface product: RTL8101E/RTL8102E PCI Express Fast Ethernet controller vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:01:00.0 logical name: eth0 version: 07 serial: 74:86:7a:40:5d:48 size: 100Mbit/s capacity: 100Mbit/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full ip=192.168.1.10 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s resources: irq:60 ioport:4000(size=256) memory:c0700000-c0700fff memory:c0400000-c0403fff *-network UNCLAIMED description: Network controller product: QCA9565 / AR9565 Wireless Network Adapter vendor: Qualcomm Atheros physical id: 0 bus info: pci@0000:02:00.0 version: 01 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list configuration: latency=0 resources: memory:c0600000-c067ffff memory:9fb00000-9fb0ffff Please suggest what I should do to fix it. Thx in advance

    Read the article

  • Random greyed unresponsive screen on netbook

    - by user643722
    I love my Asus Eee PC 1000 Ubuntu 12.04 netbook, but I have a little problem. As I use it, the screen will randomly turn grey and become unresponsive. I can then only wait, until perhaps 10-60 secs. later, when I can interact again. Only the bar at the top of my screen retains its colour throughout. I thought it might be Firefox, as I have a lot of tabs open. I installed Chromium, used it instead, and the problem remained. A while back I upgraded from 1 to 2 Gb RAM. So, I thought recently, maybe I should increase the swap-space. I have 738Mb of 7.2Gb free on root; and 2Gb of 28Gb free on my home drive. I bought a 32 Gb SD Card and assigned 4Gb to swap space. cat /proc/swaps reports that the partition is being used. Alas the problem remains. Does anyone know what's wrong with my machine? The SD Card has changed my machine somewhat, but the greying still happens. I ran free -m shortly after another episode, and received: total used free shared buffers cached Mem: 2004 1731 272 0 370 769 -/+ buffers/cache: 591 1412 Swap: 4073 0 4073 Update: Using 'top', I can see that compiz uses about 43% of the CPU (#1 position) when the greying occurs. After the greying, compiz drops back down to its usual 8% of CPU.

    Read the article

  • 2012 EC Election Results

    - by heathervc
    The 2012 Fall Executive Committee Election process is now complete. The ballot closed at midnight pacific time on Monday, 29 October.  Congratulations to Cinterion Wireless Modules GmbH, Credit Suisse, Fujitsu Limited, Hewlett-Packard (all four candidates were ratified),  and CloudBees and London Java Community (two elected candidates) as the new and re-elected merged EC Members. For more information regarding the merged EC, please refer to JSR 355 and the JCP 2.9 Process Document. Ratified Seats: Cinterion Wireless Modules GmbH, Credit Suisse, Fujitsu Limited and Hewlett-Packard Open Election Seats: CloudBees and London Java Community Newly elected EC Members take their seats on Tuesday, 13 November 2012. Detailed Election Results:Number of Eligible Voters: 1131 Percent of Eligible Members Casting Votes: 23.70% Ratified Seats: Candidate Yes Votes (%) No Votes (%) Abstentions Cinterion Wireless Modules GmbH 156 (76) 48 (24) 64 Credit Suisse 205 (85) 35 (15) 28 Fujitsu Limited 195 (85) 35 (15) 38 Hewlett-Packard 182 (81) 44 (19) 42 Open Election Seats: The top two candidates have been elected. Candidate Votes (%) Cisco Systems 37 (7) CloudBees 101 (20) Giuseppe Dell'Abate 6 (1) Liferay, Inc. 35 (7) London Java Community 164 (33) MoroccoJUG 46 (9) North Sixty-One Ltd 26 (5) Software AG 19 (4) ZeroTurnaround 64 (13) None of the above 5 (1) For more information about the candidates who ran for the 2012 Executive Committee Election, please visit the 2012 Executive Committee Elections Nominees page.

    Read the article

  • Ubuntu 11.10 Random reboots how to find root cause?

    - by Indigo42
    All, This issue started with 11.04, I upgraded to 11.10 this week in hopes it would correct it, but after a few days it happened again.. A few times a day, randomly, my monitors will go black and the machine will come back in the post screen and boot up again. Sometimes it boots up properly, sometimes it boots to disk scan (I understand why...the machine just died with a bunch of stuff open) and sometimes it takes several cycles of this to come up. I connected to the system with my laptop and tailed dmesg, syslog, kern.log, and Xorg.0.log. I also ran a cat /proc/kmesg. Nothing is showing up in any of these log files when it happens..it's just like someone has pulled the plug. I just got through running 4 hours of the memory test with no errors. I have a AMD Phenom 9850 Quad-Core Processor and Nvida 9500GT graphics card. This system has been stable for like 4 years. I'm thinking it might be a hardware problem, but how do I find out? Thanks,

    Read the article

  • ORA-00900 Super Easy Fix (for some cases)

    - by Bunch
    Here is a really easy fix for some ORA-00900 errors. Well at least the one I saw the other day. This was something that I did not come across when searching either. I found lots of other ideas on what the problem might be but not the fix. Since I am fairly new to PL/SQL (TSQL only for a long time) this one stumped me for a while. Until I asked someone and they saw the error in about two seconds. When using the Command Window to add a view I was receiving an ORA-00900 error. So I checked that everything the view was referencing was there and that the permissions looked OK. The code for the view was fairly simple and it ran just fine in a regular SQL Window. It ended up that the Command Window did not like the space I had between the list of items in the select before the from. Bad: col1,col2,                               <--- does not like the empty linefrom tblSomething Good: col1,col2,from tblSomething I will just chalk that up to my familiarity with PL/SQL. Tags: PLSQL

    Read the article

  • Ubuntu 12.04 login screen flickers. “Could not write bytes: broken pipes”

    - by Brayn
    I use Ubuntu 12.04 x64 with a dual-boot setup. Yesterday it worked fine but this morning when I attempted to boot it gets to the login screen and then it just flickers, alternating between the login screen and the console showing boot items (mainly Apache, the last one being "Battery status" although it's a desktop) all with [OK] status. The only error that I can see is: "Could not write bytes: broken pipes" on top of the screen. The only things I can think of that could cause this are: This morning I had a removable hdd plugged in during boot time, which I usually don't have Yesterday I've installed Dwarven Fortress that requires some x32 libraries so I've installed ia32 using synaptic. As far as I know this shouldn't brake the system but I didn't reboot yesterday so I can't be sure. I've tried booting in recovery mode and tried running the utils there but still no luck. I've ran out of ideas. Thanks. EDIT: Forgot to mention that all partitions have plenty of free space EDIT2: In the end I just reinstalled Ubuntu as time was of the essence.

    Read the article

  • Very slow wireless connection (unrelated to power management) using Netgear N150 WNA1100 in 12.04

    - by vgaldikas
    I am using a Netgear N150 WNA1100 USB Adapter. The network driver is: ath9k_htc. When I use Ubuntu 12.04 my wireless connection is much slower than when I use the WNA1100 with my Windows 7 installation on the same machine. I have been researching this and the most common reason for this seems to be related to power management. However for me this is off by default. I had entered a bunch of different commands and, at one stage, I got it to work at full power. But then I rebooted the machine and it went back to slow again. After entering the different commands I was afraid that I may have messed something up, so I performed a fresh install of Ubuntu. I still have the same problem. My wireless connection is still much slower when using Ubuntu than when using Windows 7. I am not sure what other info could help... EDIT: Ok, I have made live usb from the iso file I used to install Ubuntu on this pc, and ran it on my laptop. Still the same problem. However la[top works grand on cable. I suppose this means that my wireless adapter or network driver can be eliminated as root of the problem.. So maybe to do with router itself? I use ZyXEL P-660HW-D1

    Read the article

  • What differences should I know? I just upgraded to 13.10 from 10.10 [on hold]

    - by test
    I ran Ubuntu 10.10 for a long time because I liked the menu style. The change in GUI with the upgrades drove me nuts but I finally gave in and downloaded Saucy Salamander 13.10 x64. It's a fresh install running as a virtual machine guest in VMWare Workstation 9 on a Windows 7 x64 host. Well it looks like all those icons are still there on the side which I would be OK with if there were some way to bring back my menus. I have no organized way of accessing things now, or do I? That is the purpose for this question, maybe there is some functionality I just can't find but is there. Also all my fine tuning was gone. I used to be able to change DPI but that's gone. I went ahead and installed Unity Tweak Tool via sudo apt-get install unity-tweak-tool but I couldn't find an icon for it after I installed it.. because again no menu. So I did a search for it and found it there. I've changed the font and which side the window buttons appear on which is good enough for now. Anyway... any suggestions you may have for me I'm game. I'm a Windows 7 user primarily but I use Ubuntu every once in a while. I really liked the old style where everything was categorized like for Applications there was Accessories, Games, Graphics, Internet, Office, Sound & Video, Wine.

    Read the article

  • How to create a new WCF/MVC/jQuery application from scratch

    - by pjohnson
    As a corporate developer by trade, I don't get much opportunity to create from-the-ground-up web sites; usually it's tweaks, fixes, and new functionality to existing sites. And with hobby sites, I often don't find the challenges I run into with enterprise systems; usually it's starting from Visual Studio's boilerplate project and adding whatever functionality I want to play around with, rarely deploying outside my own machine. So my experience creating a new enterprise-level site was a bit dated, and the technologies to do so have come a long way, and are much more ready to go out of the box. My intention with this post isn't so much to provide any groundbreaking insights, but to just tie together a lot of information in one place to make it easy to create a new site from scratch. Architecture One site I created earlier this year had an MVC 3 front end and a WCF 4-driven service layer. Using Visual Studio 2010, these project types are easy enough to add to a new solution. I created a third Class Library project to store common functionality the front end and services layers both needed to access, for example, the DataContract classes that the front end uses to call services in the service layer. By keeping DataContract classes in a separate project, I avoided the need for the front end to have an assembly/project reference directly to the services code, a bit cleaner and more flexible of an SOA implementation. Consuming the service Even by this point, VS has given you a lot. You have a working web site and a working service, neither of which do much but are great starting points. To wire up the front end and the services, I needed to create proxy classes and WCF client configuration information. I decided to use the SvcUtil.exe utility provided as part of the Windows SDK, which you should have installed if you installed VS. VS also provides an Add Service Reference command since the .NET 1.x ASMX days, which I've never really liked; it creates several .cs/.disco/etc. files, some of which contained hardcoded URL's, adding duplicate files (*1.cs, *2.cs, etc.) without doing a good job of cleaning up after itself. I've found SvcUtil much cleaner, as it outputs one C# file (containing several proxy classes) and a config file with settings, and it's easier to use to regenerate the proxy classes when the service changes, and to then maintain all your configuration in one place (your Web.config, instead of the Service Reference files). I provided it a reference to a copy of my common assembly so it doesn't try to recreate the data contract classes, had it use the type List<T> for collections, and modified the output files' names and .NET namespace, ending up with a command like: svcutil.exe /l:cs /o:MyService.cs /config:MyService.config /r:MySite.Common.dll /ct:System.Collections.Generic.List`1 /n:*,MySite.Web.ServiceProxies http://localhost:59999/MyService.svc I took the generated MyService.cs file and drop it in the web project, under a ServiceProxies folder, matching the namespace and keeping it separate from classes I coded manually. Integrating the config file took a little more work, but only needed to be done once as these settings didn't often change. A great thing Microsoft improved with WCF 4 is configuration; namely, you can use all the default settings and not have to specify them explicitly in your config file. Unfortunately, SvcUtil doesn't generate its config file this way. If you just copy & paste MyService.config's contents into your front end's Web.config, you'll copy a lot of settings you don't need, plus this will get unwieldy if you add more services in the future, each with its own custom binding. Really, as the only mandatory settings are the endpoint's ABC's (address, binding, and contract) you can get away with just this: <system.serviceModel>  <client>    <endpoint address="http://localhost:59999/MyService.svc" binding="wsHttpBinding" contract="MySite.Web.ServiceProxies.IMyService" />  </client></system.serviceModel> By default, the services project uses basicHttpBinding. As you can see, I switched it to wsHttpBinding, a more modern standard. Using something like netTcpBinding would probably be faster and more efficient since the client & service are both written in .NET, but it requires additional server setup and open ports, whereas switching to wsHttpBinding is much simpler. From an MVC controller action method, I instantiated the client, and invoked the method for my operation. As with any object that implements IDisposable, I wrapped it in C#'s using() statement, a tidy construct that ensures Dispose gets called no matter what, even if an exception occurs. Unfortunately there are problems with that, as WCF's ClientBase<TChannel> class doesn't implement Dispose according to Microsoft's own usage guidelines. I took an approach similar to Technology Toolbox's fix, except using partial classes instead of a wrapper class to extend the SvcUtil-generated proxy, making the fix more seamless from the controller's perspective, and theoretically, less code I have to change if and when Microsoft fixes this behavior. User interface The MVC 3 project template includes jQuery and some other common JavaScript libraries by default. I updated the ones I used to the latest versions using NuGet, available in VS via the Tools > Library Package Manager > Manage NuGet Packages for Solution... > Updates. I also used this dialog to remove packages I wasn't using. Given that it's smart enough to know the difference between the .js and .min.js files, I was hoping it would be smart enough to know which to include during build and publish operations, but this doesn't seem to be the case. I ended up using Cassette to perform the minification and bundling of my JavaScript and CSS files; ASP.NET 4.5 includes this functionality out of the box. The web client to web server link via jQuery was easy enough. In my JavaScript function, unobtrusively wired up to a button's click event, I called $.ajax, corresponding to an action method that returns a JsonResult, accomplished by passing my model class to the Controller.Json() method, which jQuery helpfully translates from JSON to a JavaScript object.$.ajax calls weren't perfectly straightforward. I tried using the simpler $.post method instead, but ran into trouble without specifying the contentType parameter, which $.post doesn't have. The url parameter is simple enough, though for flexibility in how the site is deployed, I used MVC's Url.Action method to get the URL, then sent this to JavaScript in a JavaScript string variable. If the request needed input data, I used the JSON.stringify function to convert a JavaScript object with the parameters into a JSON string, which MVC then parses into strongly-typed C# parameters. I also specified "json" for dataType, and "application/json; charset=utf-8" for contentType. For success and error, I provided my success and error handling functions, though success is a bit hairier. "Success" in this context indicates whether the HTTP request succeeds, not whether what you wanted the AJAX call to do on the web server was successful. For example, if you make an AJAX call to retrieve a piece of data, the success handler will be invoked for any 200 OK response, and the error handler will be invoked for failed requests, e.g. a 404 Not Found (if the server rejected the URL you provided in the url parameter) or 500 Internal Server Error (e.g. if your C# code threw an exception that wasn't caught). If an exception was caught and handled, or if the data requested wasn't found, this would likely go through the success handler, which would need to do further examination to verify it did in fact get back the data for which it asked. I discuss this more in the next section. Logging and exception handling At this point, I had a working application. If I ran into any errors or unexpected behavior, debugging was easy enough, but of course that's not an option on public web servers. Microsoft Enterprise Library 5.0 filled this gap nicely, with its Logging and Exception Handling functionality. First I installed Enterprise Library; NuGet as outlined above is probably the best way to do so. I needed a total of three assembly references--Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging, and Microsoft.Practices.EnterpriseLibrary.Logging. VS links with the handy Enterprise Library 5.0 Configuration Console, accessible by right-clicking your Web.config and choosing Edit Enterprise Library V5 Configuration. In this console, under Logging Settings, I set up a Rolling Flat File Trace Listener to write to log files but not let them get too large, using a Text Formatter with a simpler template than that provided by default. Logging to a different (or additional) destination is easy enough, but a flat file suited my needs. At this point, I verified it wrote as expected by calling the Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write method from my C# code. With those settings verified, I went on to wire up Exception Handling with Logging. Back in the EntLib Configuration Console, under Exception Handling, I used a LoggingExceptionHandler, setting its Logging Category to the category I already had configured in the Logging Settings. Then, from code (e.g. a controller's OnException method, or any action method's catch block), I called the Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException method, providing the exception and the exception policy name I had configured in the Exception Handling Settings. Before I got this configured correctly, when I tried it out, nothing was logged. In working with .NET, I'm used to seeing an exception if something doesn't work or isn't set up correctly, but instead working with these EntLib modules reminds me more of JavaScript (before the "use strict" v5 days)--it just does nothing and leaves you to figure out why, I presume due in part to the listener pattern Microsoft followed with the Enterprise Library. First, I verified logging worked on its own. Then, verifying/correcting where each piece wires up to the next resolved my problem. Your C# code calls into the Exception Handling module, referencing the policy you pass the HandleException method; that policy's configuration contains a LoggingExceptionHandler that references a logCategory; that logCategory should be added in the loggingConfiguration's categorySources section; that category references a listener; that listener should be added in the loggingConfiguration's listeners section, which specifies the name of the log file. One final note on error handling, as the proper way to handle WCF and MVC errors is a whole other very lengthy discussion. For AJAX calls to MVC action methods, depending on your configuration, an exception thrown here will result in ASP.NET'S Yellow Screen Of Death being sent back as a response, which is at best unnecessarily and uselessly verbose, and at worst a security risk as the internals of your application are exposed to potential hackers. I mitigated this by overriding my controller's OnException method, passing the exception off to the Exception Handling module as above. I created an ErrorModel class with as few properties as possible (e.g. an Error string), sending as little information to the client as possible, to both maximize bandwidth and mitigate risk. I then return an ErrorModel in JSON format for AJAX requests: if (filterContext.HttpContext.Request.IsAjaxRequest()){    filterContext.Result = Json(new ErrorModel(...));    filterContext.ExceptionHandled = true;} My $.ajax calls from the browser get a valid 200 OK response and go into the success handler. Before assuming everything is OK, I check if it's an ErrorModel or a model containing what I requested. If it's an ErrorModel, or null, I pass it to my error handler. If the client needs to handle different errors differently, ErrorModel can contain a flag, error code, string, etc. to differentiate, but again, sending as little information back as possible is ideal. Summary As any experienced ASP.NET developer knows, this is a far cry from where ASP.NET started when I began working with it 11 years ago. WCF services are far more powerful than ASMX ones, MVC is in many ways cleaner and certainly more unit test-friendly than Web Forms (if you don't consider the code/markup commingling you're doing again), the Enterprise Library makes error handling and logging almost entirely configuration-driven, AJAX makes a responsive UI more feasible, and jQuery makes JavaScript coding much less painful. It doesn't take much work to get a functional, maintainable, flexible application, though having it actually do something useful is a whole other matter.

    Read the article

  • Building a SOA/BPM/BAM Cluster Part I &ndash; Preparing the Environment

    - by antony.reynolds
    An increasing number of customers are using SOA Suite in a cluster configuration, I might hazard to say that the majority of production deployments are now using SOA clusters.  So I thought it may be useful to detail the steps in building an 11g cluster and explain a little about why things are done the way they are. In this series of posts I will explain how to build a SOA/BPM cluster using the Enterprise Deployment Guide. This post will explain the setting required to prepare the cluster for installation and configuration. Software Required The following software is required for an 11.1.1.3 SOA/BPM install. Software Version Notes Oracle Database Certified databases are listed here SOA & BPM Suites require a working database installation. Repository Creation Utility (RCU) 11.1.1.3 If upgrading an 11.1.1.2 repository then a separate script is available. Web Tier Utilities 11.1.1.3 Provides Web Server, 11.1.1.3 is an upgrade to 11.1.1.2, so 11.1.1.2 must be installed first. Web Tier Utilities 11.1.1.3 Web Server, 11.1.1.3 Patch.  You can use the 11.1.1.2 version without problems. Oracle WebLogic Server 11gR1 10.3.3 This is the host platform for 11.1.1.3 SOA/BPM Suites. SOA Suite 11.1.1.2 SOA Suite 11.1.1.3 is an upgrade to 11.1.1.2, so 11.1.1.2 must be installed first. SOA Suite 11.1.1.3 SOA Suite 11.1.1.3 patch, requires 11.1.12 to have been installed. My installation was performed on Oracle Enterprise Linux 5.4 64-bit. Database I will not cover setting up the database in this series other than to identify the database requirements.  If setting up a SOA cluster then ideally we would also be using a RAC database.  I assume that this is running on separate machines to the SOA cluster.  Section 2.1, “Database”, of the EDG covers the database configuration in detail. Settings The database should have processes set to at least 400 if running SOA/BPM and BAM. alter system set processes=400 scope=spfile Run RCU The Repository Creation Utility creates the necessary database tables for the SOA Suite.  The RCU can be run from any machine that can access the target database.  In 11g the RCU creates a number of pre-defined users and schema with a user defiend prefix.  This allows you to have multiple 11g installations in the same database. After running the RCU you need to grant some additional privileges to the soainfra user.  The soainfra user should have privileges on the transaction tables. grant select on sys.dba_pending_transactions to prefix_soainfra Grant force any transaction to prefix_soainfra Machines The cluster will be built on the following machines. EDG Name is the name used for this machine in the EDG. Notes are a description of the purpose of the machine. EDG Name Notes LB External load balancer to distribute load across and failover between web servers. WEBHOST1 Hosts a web server. WEBHOST2 Hosts a web server. SOAHOST1 Hosts SOA components. SOAHOST2 Hosts SOA components. BAMHOST1 Hosts BAM components. BAMHOST2 Hosts BAM components. Note that it is possible to collapse the BAM servers so that they run on the same machines as the SOA servers. In this case BAMHOST1 and SOAHOST1 would be the same, as would BAMHOST2 and SOAHOST2. The cluster may include more than 2 servers and in this case we add SOAHOST3, SOAHOST4 etc as needed. My cluster has WEBHOST1, SOAHOST1 and BAMHOST1 all running on a single machine. Software Components The cluster will use the following software components. EDG Name is the name used for this machine in the EDG. Type is the type of component, generally a WebLogic component. Notes are a description of the purpose of the component. EDG Name Type Notes AdminServer Admin Server Domain Admin Server WLS_WSM1 Managed Server Web Services Manager Policy Manager Server WLS_WSM2 Managed Server Web Services Manager Policy Manager Server WLS_SOA1 Managed Server SOA/BPM Managed Server WLS_SOA2 Managed Server SOA/BPM Managed Server WLS_BAM1 Managed Server BAM Managed Server running Active Data Cache WLS_BAM2 Managed Server BAM Manager Server without Active Data Cache   Node Manager Will run on all hosts with WLS servers OHS1 Web Server Oracle HTTP Server OHS2 Web Server Oracle HTTP Server LB Load Balancer Load Balancer, not part of SOA Suite The above assumes a 2 node cluster. Network Configuration The SOA cluster requires an extensive amount of network configuration.  I would recommend assigning a private sub-net (internal IP addresses such as 10.x.x.x, 192.168.x.x or 172.168.x.x) to the cluster for use by addresses that only need to be accessible to the Load Balancer or other cluster members.  Section 2.2, "Network", of the EDG covers the network configuration in detail. EDG Name is the hostname used in the EDG. IP Name is the IP address name used in the EDG. Type is the type of IP address: Fixed is fixed to a single machine. Floating is assigned to one of several machines to allow for server migration. Virtual is assigned to a load balancer and used to distribute load across several machines. Host is the host where this IP address is active.  Note for floating IP addresses a range of hosts is given. Bound By identifies which software component will use this IP address. Scope shows where this IP address needs to be resolved. Cluster scope addresses only have to be resolvable by machines in the cluster, i.e. the machines listed in the previous section.  These addresses are only used for inter-cluster communication or for access by the load balancer. Internal scope addresses Notes are comments on why that type of IP is used. EDG Name IP Name Type Host Bound By Scope Notes ADMINVHN VIP1 Floating SOAHOST1-SOAHOSTn AdminServer Cluster Admin server, must be able to migrate between SOA server machines. SOAHOST1 IP1 Fixed SOAHOST1 NodeManager, WLS_WSM1 Cluster WSM Server 1 does not require server migration. SOAHOST2 IP2 Fixed SOAHOST1 NodeManager, WLS_WSM2 Cluster WSM Server 2 does not require server migration SOAHOST1VHN VIP2 Floating SOAHOST1-SOAHOSTn WLS_SOA1 Cluster SOA server 1, must be able to migrate between SOA server machines SOAHOST2VHN VIP3 Floating SOAHOST1-SOAHOSTn WLS_SOA2 Cluster SOA server 2, must be able to migrate between SOA server machines BAMHOST1 IP4 Fixed BAMHOST1 NodeManager Cluster   BAMHOST1VHN VIP4 Floating BAMHOST1-BAMHOSTn WLS_BAM1 Cluster BAM server 1, must be able to migrate between BAM server machines BAMHOST2 IP3 Fixed BAMHOST2 NodeManager, WLS_BAM2 Cluster BAM server 2 does not require server migration WEBHOST1 IP5 Fixed WEBHOST1 OHS1 Cluster   WEBHOST2 IP6 Fixed WEBHOST2 OHS2 Cluster   soa.mycompany.com VIP5 Virtual LB LB Public External access point to SOA cluster. admin.mycompany.com VIP6 Virtual LB LB Internal Internal access to WLS console and EM soainternal.mycompany.com VIP7 Virtual LB LB Internal Internal access point to SOA cluster Floating IP addresses are IP addresses that may be re-assigned between machines in the cluster.  For example in the event of failure of SOAHOST1 then WLS_SOA1 will need to be migrated to another server.  In this case VIP2 (SOAHOST1VHN) will need to be activated on the new target machine.  Once set up the node manager will manage registration and removal of the floating IP addresses with the exception of the AdminServer floating IP address. Note that if the BAMHOSTs and SOAHOSTs are the same machine then you can obviously share the hostname and fixed IP addresses, but you still need separate floating IP addresses for the different managed servers.  The hostnames don’t have to be the ones given in the EDG, but they must be distinct in the same way as the ETC names are distinct.  If the type is a fixed IP then if the addresses are the same you can use the same hostname, for example if you collapse the soahost1, bamhost1 and webhost1 onto a single machine then you could refer to them all as HOST1 and give them the same IP address, however SOAHOST1VHN can never be the same as BAMHOST1VHN because these are floating IP addresses. Notes on DNS IP addresses that are of scope “Cluster” just need to be in the hosts file (/etc/hosts on Linux, C:\Windows\System32\drivers\etc\hosts on Windows) of all the machines in the cluster and the load balancer.  IP addresses that are of scope “Internal” need to be available on the internal DNS servers, whilst IP addresses of scope “Public” need to be available on external and internal DNS servers. Shared File System At a minimum the cluster needs shared storage for the domain configuration, XA transaction logs and JMS file stores.  It is also possible to place the software itself on a shared server.  I strongly recommend that all machines have the same file structure for their SOA installation otherwise you will experience pain!  Section 2.3, "Shared Storage and Recommended Directory Structure", of the EDG covers the shared storage recommendations in detail. The following shorthand is used for locations: ORACLE_BASE is the root of the file system used for software and configuration files. MW_HOME is the location used by the installed SOA/BPM Suite installation.  This is also used by the web server installation.  In my installation it is set to <ORACLE_BASE>/SOA11gPS2. ORACLE_HOME is the location of the Oracle SOA components or the Oracle Web components.  This directory is installed under the the MW_HOME but the name is decided by the user at installation, default values are Oracle_SOA1 and Oracle_Web1.  In my installation they are set to <MW_HOME>/Oracle_SOA and <MW_HOME>/Oracle _WEB. ORACLE_COMMON_HOME is the location of the common components and is located under the MW_HOME directory.  This is always <MW_HOME>/oracle_common. ORACLE_INSTANCE is used by the Oracle HTTP Server and/or Oracle Web Cache.  It is recommended to create it under <ORACLE_BASE>/admin.  In my installation they are set to <ORACLE_BASE>/admin/Web1, <ORACLE_BASE>/admin/Web2 and <ORACLE_BASE>/admin/WC1. WL_HOME is the WebLogic server home and is always found at <MW_HOME>/wlserver_10.3. Key file locations are shown below. Directory Notes <ORACLE_BASE>/admin/domain_name/aserver/domain_name Shared location for domain.  Used to allow admin server to manually fail over between machines.  When creating domain_name provide the aserver directory as the location for the domain. In my install this is <ORACLE_BASE>/admin/aserver/soa_domain as I only have one domain on the box. <ORACLE_BASE>/admin/domain_name/aserver/applications Shared location for deployed applications.  Needs to be provided when creating the domain. In my install this is <ORACLE_BASE>/admin/aserver/applications as I only have one domain on the box. <ORACLE_BASE>/admin/domain_name/mserver/domain_name Either unique location for each machine or can be shared between machines to simplify task of packing and unpacking domain.  This acts as the managed server configuration location.  Keeping it separate from Admin server helps to avoid problems with the managed servers messing up the Admin Server. In my install this is <ORACLE_BASE>/admin/mserver/soa_domain as I only have one domain on the box. <ORACLE_BASE>/admin/domain_name/mserver/applications Either unique location for each machine or can be shared between machines.  Holds deployed applications. In my install this is <ORACLE_BASE>/admin/mserver/applications as I only have one domain on the box. <ORACLE_BASE>/admin/domain_name/soa_cluster_name Shared directory to hold the following   dd – deployment descriptors   jms – shared JMS file stores   fadapter – shared file adapter co-ordination files   tlogs – shared transaction log files In my install this is <ORACLE_BASE>/admin/soa_cluster. <ORACLE_BASE>/admin/instance_name Local folder for web server (OHS) instance. In my install this is <ORACLE_BASE>/admin/web1 and <ORACLE_BASE>/admin/web2. I also have <ORACLE_BASE>/admin/wc1 for the Web Cache I use as a load balancer. <ORACLE_BASE>/product/fmw This can be a shared or local folder for the SOA/BPM Suite software.  I used a shared location so I only ran the installer once. In my install this is <ORACLE_BASE>/SOA11gPS2 All the shared files need to be put onto a shared storage media.  I am using NFS, but recommendation for production would be a SAN, with mirrored disks for resilience. Collapsing Environments To reduce the hardware requirements it is possible to collapse the BAMHOST, SOAHOST and WEBHOST machines onto a single physical machine.  This will require more memory but memory is a lot cheaper than additional machines.  For environments that require higher security then stay with a separate WEBHOST tier as per the EDG.  Similarly for high volume environments then keep a separate set of machines for BAM and/or Web tier as per the EDG. Notes on Dev Environments In a dev environment it is acceptable to use a a single node (non-RAC) database, but be aware that the config of the data sources is different (no need to use multi-data source in WLS).  Typically in a dev environment we will collapse the BAMHOST, SOAHOST and WEBHOST onto a single machine and use a software load balancer.  To test a cluster properly we will need at least 2 machines. For my test environment I used Oracle Web Cache as a load balancer.  I ran it on one of the SOA Suite machines and it load balanced across the Web Servers on both machines.  This was easy for me to set up and I could administer it from a web based console.

    Read the article

  • Space in search base OU causes error in Active Directory

    - by Jared Farrish
    Recently, while putting together some code to page Active Directory results beyond sizeLimit=1000, we ran into a strange behavior/bug of AD. Specifically, if we had an OU with a space in the search base, it caused an error: String base = "OU=Area X,OU=myserver,DC=my,DC=ad,DC=myserver,DC=com"; env.put(Context.PROVIDER_URL, "ldap://my.ad.myserver.com:389/" + base); This is the error we received: javax.naming.NamingException: [LDAP: error code 1 - 000020D6: SvcErr: DSID-031007DB, problem 5012 (DIR_ERROR), data 0 When we remove that OU, it works fine. What would cause this to occur? Do we need to encode the space somehow (+ and %20 only caused more issues)? Or is this generally illegal/unnecessary?

    Read the article

  • What does 'useLegacyV2RuntimeActivationPolicy' do in the .NET 4 config?

    - by Cameron MacFarland
    While converting a project that used SlimDX, and therefore has unmanaged code, to .NET 4.0 I ran into the following error: Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information. Googling around gave me the solution, which is to add this to the applications config: <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0"/> </startup> </configuration> My question is, what is the useLegacyV2RuntimeActivationPolicy doing? I can't find any documentation about it.

    Read the article

  • ProcessAjaxOpenIdResponse doesn't exist in OpenAuth library?

    - by Stacey
    Using the NerdDinner 2.0 source code, I was trying to emulate its use of OpenID. All was fine and good until I ran into this line of code.. ( seen in the source code at : http://nerddinner.codeplex.com/sourcecontrol/network/Show?projectName=nerddinner&changeSetId=46375#952606 ) - ( trunk/nerddinner/services/OpenIdRelyingPartyService.cs ) public ActionResult ProcessAjaxOpenIdResponse() { return relyingParty.ProcessAjaxOpenIdResponse().AsActionResult(); } ProcessAjaxOpenIdResponse doesn't exist, though! If I download the nerddinner application and follow the dependancies, I can see that the OpenAuth library they use has this method. However, getting the newest version from http://www.dotnetopenauth.net/ - the library does not have this method. Any ideas on what happened to it, and what I should use instead?

    Read the article

  • Django cannot find my templatetags, even though it's in INSTALLED_APPS and has a __init__.py

    - by Vivian Short
    I just installed django-compress (http://code.google.com/p/django-compress) into /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/compress. I added 'compress' to INSTALLED_APPS. In my template file, I wrote {% load compressed %}. I got the error: 'compressed' is not a valid tag library: Could not load template library from django.templatetags.compressed, No module named compressed I verified that there is an init.py in compress, as well as in compress/templatetags/. I tried putting the compress directory into PYTHONPATH. I ran python and wrote "import compress" and that worked. Your suggestions would be very appreciated! What else can I try?

    Read the article

< Previous Page | 84 85 86 87 88 89 90 91 92 93 94 95  | Next Page >