Skip to content

Commit 9d9e6d2

Browse files
committed
Issue #26.
1 parent 3acc018 commit 9d9e6d2

File tree

3 files changed

+27
-11
lines changed

3 files changed

+27
-11
lines changed

compiler/src/main/java/org/hisrc/jsonix/configuration/ModulesConfiguration.java

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -298,17 +298,24 @@ private <T, C extends T> Map<String, Mapping<T, C>> buildMappings(
298298
final Map<String, Mapping<T, C>> mappings = new HashMap<String, Mapping<T, C>>();
299299
for (MappingConfiguration mappingConfiguration : mappingConfigurations) {
300300
final String packageName = mappingConfiguration.getPackage();
301-
final MPackageInfo packageInfo = analyzer.getPackageInfoMap().get(
302-
packageName);
303-
if (packageInfo == null) {
304-
logger.warn(MessageFormat.format(
305-
"Package name [{0}] could not be found.",
306-
Validate.notNull(packageName)));
307-
// throw new MissingPackageException(packageName);
301+
if (packageName == null) {
302+
// TODO @XmlLocation
303+
logger.warn("At least one of the mapping configurations is missing the required [package] attribute.");
308304
} else {
309-
final Mapping<T, C> mapping = mappingConfiguration.build(
310-
context, analyzer, modelInfo, packageInfo, mappings);
311-
mappings.put(mappingConfiguration.getId(), mapping);
305+
final MPackageInfo packageInfo = analyzer.getPackageInfoMap()
306+
.get(packageName);
307+
308+
if (packageInfo == null) {
309+
logger.warn(MessageFormat.format(
310+
"Package name [{0}] could not be found.",
311+
Validate.notNull(packageName)));
312+
// throw new MissingPackageException(packageName);
313+
} else {
314+
final Mapping<T, C> mapping = mappingConfiguration
315+
.build(context, analyzer, modelInfo, packageInfo,
316+
mappings);
317+
mappings.put(mappingConfiguration.getId(), mapping);
318+
}
312319
}
313320
}
314321
return mappings;

compiler/src/main/java/org/hisrc/jsonix/execution/JsonixInvoker.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import org.hisrc.jsonix.settings.Settings;
1111
import org.jvnet.jaxb2_commons.xjc.model.concrete.XJCCMInfoFactory;
1212
import org.jvnet.jaxb2_commons.xml.bind.model.MModelInfo;
13+
import org.slf4j.Logger;
1314

1415
import com.sun.tools.xjc.model.Model;
1516
import com.sun.tools.xjc.model.nav.NClass;
@@ -24,6 +25,14 @@ public void execute(Settings settings, Model model,
2425

2526
context.setLogLevel(settings.getLogLevel().asInt());
2627

28+
final Logger logger = context.getLoggerFactory().getLogger(
29+
JsonixInvoker.class.getName());
30+
31+
if (model == null) {
32+
logger.error("The model is null, there was probably a problem parsing schemas.");
33+
return;
34+
}
35+
2736
final ModulesConfigurationUnmarshaller customizationHandler = new ModulesConfigurationUnmarshaller(
2837
context);
2938

full/src/main/java/org/hisrc/jsonix/JsonixMain.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ private void execute() {
9797
final ErrorReceiver errorHandler = new ConsoleErrorReporter();
9898
final Model model = ModelLoader.load(getOptions(), new JCodeModel(),
9999
errorHandler);
100-
100+
101101
final File targetDirectory = getOptions().targetDir;
102102

103103

0 commit comments

Comments
 (0)