I'm trying to write a class for parsing xml. I want to show Alert when some error occurs. Here is my code:
Parse.swift
func parserXml(xmlUrl:String,completionHandler:([(staID: String, staName: String, ava: String, unava: String)]->Void)?)->Void{
    self.paraserCompletionHandler = completionHandler
    let request = NSURLRequest(URL: NSURL(string: xmlUrl)!)
    let urlConfig = NSURLSessionConfiguration.defaultSessionConfiguration()
    urlConfig.timeoutIntervalForRequest = 30
    urlConfig.timeoutIntervalForResource = 60
    let urlSession = NSURLSession(configuration: urlConfig, delegate: self, delegateQueue: nil)
    let task = urlSession.dataTaskWithRequest(request, completionHandler: {(data,response,error)->Void in
        if error != nil{
            print(error?.localizedDescription)
            if (error?.code == NSURLErrorTimedOut || error?.code == NSURLErrorNotConnectedToInternet){
                let vc = ViewController()
                vc.alertView()
            }
        }else{
            let parser = NSXMLParser(data: data!)
            parser.delegate = self
            parser.parse()
        }            
    })
    task.resume()
}
ViewController.swift
func alertView(){
    var alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .Alert)
    var okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default)
    self.presentViewController(alertController, animated: true, completion: nil)
}
When I run my app, my app crash and show error
fatal error: unexpectedly found nil while unwrapping an Optional value
EDIT: Xcode Stop at
self.presentViewController(alertController, animated: true, completion: nil)
I guess the reason is alertController in ViewController.swift is called by Parse.swift
can anyone resolve this question? thx