2014-10-08 3 views
0

Я пишу приложение для iPad, и сегодня я понял, что что-то не так, когда нет подключения к интернету.Как найти, где NSInvalidArgumentException ("data parameter is nil") get's throw?

Я получаю очень информативное сообщение об ошибке:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'data parameter is nil'

Я думаю, я ограничил его к этому сниппета:

@implementation WebviewPanelFactory 

- (WebviewPanelViewController *)webviewPanelForSection:(NSDictionary *)section { 
    WebviewPanelViewController *webviewPanel = [[WebviewPanelViewController new] initWithNibName:@"WebviewPanel" bundle:nil]; 
    webviewPanel.sectionTitle = section[@"Title"]; 

    NSLog(@"HERE I AM. %@ %@", webviewPanel, section); 

    [self setupURLsForWebview:webviewPanel withSection:section]; 

    NSLog(@"HERE I STILL AM"); 

    [webviewPanel initWebviewPanel]; 
    return webviewPanel; 
} 

- (void)setupURLsForWebview:(WebviewPanelViewController *)webviewPanel withSection:(NSDictionary *)section { 

    NSLog(@"HERE I AM. %@", section); 

    ... 
} 

@end 

Первый NSLog получить отпечатанный и обе переменные существуют. Но не печатается ни вторая, ни третья (которая должна быть названа сразу после первой).

Любые идеи, как продолжать?

ответ

2

В XCode вы можете добавить исключение-Breakpoint, который будет остановить приложение прямо перед тем он выходит из строя Фатали. Вы должны дать этому попробовать, если он работает так, как должен, он будет приостановлен прямо на строке кода, что приведет к сбою вашего приложения.

How to add the exception-breakpoint

0

Использование пружины 3 версии конфигурации

Spring: springService.xml

<context:component-scan base-package=" com.service.impl" /> 

<!-- Scheduler : Initial delay =5 minutes (5*60000 seconds) and repeat interval= 5 minutes--> 
    <task:annotation-driven executor="myExecutor" 
     scheduler="myScheduler" /> 
    <task:executor id="myExecutor" pool-size="1" /> 
    <task:scheduler id="myScheduler" pool-size="1" /> 

    <task:scheduled-tasks scheduler="myScheduler"> 
     <task:scheduled ref="batchUpdateServiceImpl" 
      method="updateMe" fixed-delay="300000" initial-delay="300000"/> 
     <task:scheduled ref="batchUpdateServiceImpl" 
      method="updateYou" 
      fixed-delay="300000" initial-delay="300000"/> 
    </task:scheduled-tasks> 



Package Code : 
com.service.impl 

Class Name: 
@Service 
public class BatchUpdateServiceImpl { 
    public void updateMe(){ 
    System.out.println(“update me”); 
    } 
    public void updateYou(){ 
    System.out.println(“update You”); 
    } 

} 

Web.xml : 
<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
      /WEB-INF/springService.xml 
     </param-value> 
    </context-param> 
+0

Это Ява, не так ли? – Robert

+0

Этот ответ не имеет абсолютно никакого отношения к этому вопросу и должен быть удален. – TMob

Смежные вопросы